java中訪問修飾符
阿新 • • 發佈:2017-07-29
addclass ext pri post span 沒有 pretty pub ()
較之c++ 中 public,proctected, private 三種訪問控制, java多了默認訪問控制。
java中四種訪問控制權限 簡單描寫敘述為一下四句:
1)private 僅本類可見 (同c++)
2)默認 對本包可見/包內訪問 (c++沒有)
3)protected 對本包和全部子類可見 (c++中沒有本包概念。較 默認訪問 能夠被在其它包下的子類訪問)
4)public 對全部類可見 (同c++)
當中1)4)與c++同樣,對2)3)做簡單測試
3)protected 對本包可見測試例如以下:
package com.behavior;
public class Parent {
protected int i = 3;
}
package com.behavior;
//與Parent在同一個包下,無繼承關系
public class Children {
public void action() {
Parent parent = new Parent();
System.out.print(parent.i);
}
}
package com.stratege;
import com.behavior.Children;
public class ChildrenTest {
public static void main(String [] args) {
Children children = new Children();
children.action();
}
}
驗證:protected 對包內訪問的權限
2)默認 對包內訪問測試
將Parent中變量i 訪問權限做例如以下改動,Children, ChildrenTest不變
package com.behavior;
public class Parent {
int i = 3;
}
驗證:默認對包內訪問的權限
java中訪問修飾符