1. 程式人生 > 其它 >關於Java中的訪問許可權

關於Java中的訪問許可權

從訪問許可權的本質來將:其實就是呼叫者和提供者的關係

 

以上為Java中的訪問許可權

 

例如:

 

package com.atguigu.testjava;

public class Test {
    public static void main(String[] args) {
CloneTest c = new CloneTest();
//c.clone(); 這邊會報錯
}
}
class CloneTest{
public void test () throws CloneNotSupportedException {
new CloneTest().clone();
}
}

在此案例中,方法的呼叫者為package com.atguigu.testjava.Test呼叫(並不是由package com.atguigu.testjava.cloneTest呼叫)

而方法的提供者為:java.lang.Object(在Object類中clone方法的許可權為protected) 

注1:clone()方法為成員方法,而成員方法和類無關,和物件有關。雖然protected訪問許可權為不同包中的子類也可以使用,但是這說的是類與類的關係,並不是物件和物件的關係。

package com.atguigu.testjava.Test的父類物件並不是java.lang.Object的物件,所以在此不可以使用。

注2:c.clone()的.表示的不是呼叫,而是表達了所屬關係,表示clone()方法是c中的方法。