public 定义的类或者方法,可以在任何地方调用。
但是后者定义的方法或者类,只能被同一个包,或者他的子类所在的包调用。

解决方案 »

  1.   

    就是说protected不能被不同包的非子类调用,public能?
    是唯一的不同吗?
      

  2.   

    java的protected和c的protected用法为什么是不同的?
      

  3.   

    还有,protected只能修饰class mumber not class。public can do it
      

  4.   

    其实,如果需要区别,也是private和protected啊。不明白你怎么要区别protected和public。他们就没什么相同的。
    private定义的禁止类外的代码访问,protected定义的能被它的包及其它包中的子类访问。