title: Public vs. Protected abstract class method
body: <p>Is there any security/access difference when making a package access level abstract class's non-static methods public vs making them protected? Only classes from within the same package that extend the abstract class can access the non-static methods anyway right? So, does it matter whether those non-static methods are public or protected since the abstract class itself places restrictions on who can extend it?</p>
  
  <pre><code>abstract class MyClass {
      protected void myFunction(){
          System.out.println("Only child classes can print this");
      }
  }
  
  abstract class MyClass {
      public void myFunction(){
          System.out.println("Still, only child classes can print this");
      }
  }
  </code></pre>