在 Java 中,類的訪問權限可以通過使用關鍵字 public, private, 和默認(也稱為包-private)來設置。在不同包中的類,其訪問權限主要受到 public 和默認兩種限制。
public 時,它可以在任何其他包中被訪問。這意味著,即使兩個類位于不同的包中,只要其中一個類是 public 的,另一個類仍然可以訪問它。例如,假設有兩個包:packageA 和 packageB。
* 在 `packageA` 中有一個 `public` 類 `ClassA`:
```java
// packageA/ClassA.java
package packageA;
public class ClassA {
// ...
}
```
* 在 `packageB` 中的類 `ClassB` 可以訪問 `packageA` 中的 `ClassA`:
```java
// packageB/ClassB.java
package packageB;
import packageA.ClassA;
public class ClassB {
public void accessClassA() {
ClassA obj = new ClassA();
// ...
}
}
```
public 或 private 關鍵字進行修飾,那么它的訪問權限就是默認的。這意味著該類只能在同一個包中被訪問。例如,假設有兩個包:packageA 和 packageB。
* 在 `packageA` 中有一個類 `ClassC`,但沒有指定訪問修飾符:
```java
// packageA/ClassC.java
package packageA;
class ClassC {
// ...
}
```
* 在 `packageB` 中的類 `ClassD` 無法直接訪問 `packageA` 中的 `ClassC`,因為它們的訪問權限是默認的:
```java
// packageB/ClassD.java
package packageB;
// 無法直接訪問 packageA.ClassC
```
* 如果需要在 `packageB` 中訪問 `packageA` 中的 `ClassC`,可以通過導入語句來實現:
```java
// packageB/ClassD.java
package packageB;
import packageA.ClassC;
public class ClassD {
public void accessClassC() {
ClassC obj = new ClassC();
// ...
}
}
```
總結:在不同包中訪問類時,可以使用 public 關鍵字來使類在任何包中都可訪問,或者使用導入語句來訪問具有默認訪問權限的類。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。