1. 程式人生 > >java中訪問修飾符

java中訪問修飾符

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中訪問修飾符