title: Why can't you have a protected abstract class in Java?
body: <p>I have an abstract class which looks like:</p>
  
  <pre><code>abstract class AbstractFoo implements Bar {
    //Code goes here
  }
  </code></pre>
  
  <p>However when I try to make AbstractFoo protected I get an error compile time error complaining that it is an illegal modifier. </p>
  
  <pre><code>protected abstract class AbstractFoo implements Bar {
    //Code goes here
  }
  </code></pre>
  
  <p>Why can't you have a protected abstract class within Java?</p>
  
  <p>EDIT: I should probably mention that this is not vanilla Java and is actually Blackberry / J2ME.</p>