溫馨提示×

java構造函數的訪問權限如何設置

小樊
132
2024-09-21 05:33:45
欄目: 編程語言

在Java中,構造函數的訪問權限可以設置為以下四種之一:public、protected、default(包訪問權限)和private。

  1. public:如果構造函數是public的,那么它可以從任何其他類被訪問和調用。這是最常用的訪問級別,因為它允許類的實例在程序的任何地方被創建。
public class MyClass {
    public MyClass() {
        // 構造函數內容
    }
}
  1. protected:如果構造函數是protected的,那么它只能從同一個包中的類或者子類中被訪問和調用。
public class MyClass {
    protected MyClass() {
        // 構造函數內容
    }
}

// 在同一個包中的另一個類
class AnotherClassInSamePackage extends MyClass {
    public AnotherClassInSamePackage() {
        super();
    }
}
  1. default(包訪問權限):如果構造函數沒有指定訪問修飾符,那么它的訪問權限就是默認的,也稱為包訪問權限。這意味著它只能從同一個包中的類被訪問和調用。
public class MyClass {
    MyClass() {
        // 構造函數內容
    }
}

// 在同一個包中的另一個類
class AnotherClassInSamePackage {
    public AnotherClassInSamePackage() {
        MyClass obj = new MyClass(); // 可以訪問MyClass的私有構造函數
    }
}

注意:不能從不同的包中直接訪問default訪問級別的構造函數。

  1. private:如果構造函數是private的,那么它只能在定義它的類內部被訪問和調用。這通常用于實現單例模式或者工廠方法模式等設計模式。
public class MyClass {
    private MyClass() {
        // 構造函數內容
    }
}

// 不能從其他類中訪問MyClass的私有構造函數

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女