Java Class中的默认可见性是否具有受保护的成员?

时间:2014-11-04 07:19:19

标签: java default semantics protected

在Java中,从我的角度来看,对于具有protected成员的默认可见类没有意义。从我的观点来看,它没有意义,因为 Java中的默认可见性=包级别 Java中的受保护可见性=包级别+子类(不管包)

class TestClass{

 protected int addIntegers(int a, int b){

       return (a+b);
 } // end of protected addIntegers(int a, int b){

}

我是否正确地说上面的代码是废话?

1 个答案:

答案 0 :(得分:2)

你可以在同一个包中有一个公共类Foo,扩展你的Base类,在另一个包中有另一个类Bar,扩展Foo并覆盖受保护的方法。

package a;

class Base {
    protected void bang() {
    }
}

package a;

public class Foo extends Base {
}

package b;

public class Bar extends Foo {
    @Override
    protected void bang() {
    }
}