首頁  >  問答  >  主體

java - 面试题:请问,以下哪些修饰符可以使其修饰的变量只能对同包类或子类有效?

如题这个答案正确吗?

package com;

public class TestParent {
    protected String protectedStr="protected";
    String defaultStr="default";

    private void method() {

    }
    void abm(){
        
    }

    protected void proabc(){
        
    }
}
package com;

public class TestSon extends TestParent{

    private void test(){
    
        
    }
}
package com;

class Main {

    static public void main(String[] args) {

        TestParent parent = new TestParent();
        TestSon son = new TestSon();
        parent.abm();//default method 
        son.abm();//default method 
        System.out.println(parent.protectedStr);
        System.out.println(parent.defaultStr);

        // -------------
        parent.proabc(); //protected method 
        son.proabc(); //protected method 
        System.out.println(son.protectedStr);
        System.out.println(son.defaultStr);

    }

}
天蓬老师天蓬老师2743 天前1922

全部回覆(1)我來回復

  • PHP中文网

    PHP中文网2017-04-18 10:52:56

    作用域 當前類別 當前包 子孫類 其他包裝
    public
    protected ×
    friendly × ×
    private × × ×

    不寫預設就是 friendly.

    選 C 沒毛病

    回覆
    0
  • 取消回覆