In the Java tutorial \"Defining an Interface\", it says
If you do not specify that the interface is
public, your interface will be acces
I think (though I could be wrong about this) that the weaker access privileges being discussed here are for the foo() and bar() methods in NewClass. All interface methods are implicitly public, but in NewClass you've left them package-private, which is a weaker guarantee than public. Changing NewClass to read
class NewClass implements PPInterface{
public void foo() {}
public void bar() {}
}
probably will fix this.