title: abstract java enum
body: <p>I write a library that should rely on enums but the actual enum should be defined by the user of my library. </p>
  
  <p>In the following example the <code>authorize</code> method requires parameters of the enum type <code>Permission</code>. </p>
  
  <pre><code>acl.authorize(userX, Permission.READ, Permission.WRITE)
  </code></pre>
  
  <p>My library should be able to handle arbitrary permissions defined by the library user. But I cannot compile my library without a <code>Permission</code> enum. So I would need something like</p>
  
  <pre><code>abstract enum Permission
  </code></pre>
  
  <p>in my library. Is there a workaround to do this?</p>