首頁  >  文章  >  Java  >  Java 函數的存取權限修飾符之 protected 的應用

Java 函數的存取權限修飾符之 protected 的應用

WBOY
WBOY原創
2024-04-26 08:21:02642瀏覽

答案: protected 存取權限修飾符允許子類別和同一套件中的類別存取成員,同時阻止其他套件中的類別存取。詳細描述:protected 成員可在定義類別、子類別和相同套件的其他類別中存取。不同套件中的類別不能存取 protected 成員。適用於:a) 允許子類別存取父類別成員。 b) 允許包內訪問,但包外阻止訪問。例如,父類別 Vehicle 的 protected 方法 getSpeed() 可被子類別 Car 訪問,但不在同一套件中的類別 Truck 無法存取。

Java 函数的访问权限修饰符之 protected 的应用

Java 函數的存取權修飾符:protected

簡介

在Java 中,protected 是一個存取權限修飾符,用於為方法、欄位和建構函數指定受限存取等級。它比 public 更具限制性,但比 default 存取權限更寬鬆。

語義

  • protected 成員可以在定義它們的類別中、子類別中和同一套件中的其他類別中訪問。
  • 對於不同的套件中的類,protected 成員無法存取。

應用程式

protected 存取權限修飾符常用於下列情況:

  • 當希望子類別能夠存取父類別中的成員,但阻止其他類別存取時。
  • 當希望在套件中提供對成員的訪問,但在套件外部防止訪問時。

實戰案例

考慮一個父類別Vehicle,它有一個protected 方法getSpeed ()

public abstract class Vehicle {
    protected int speed;

    public void getSpeed() {
        // ...
    }
}

Car 類別是Vehicle 的子類,它可以存取getSpeed() 方法,因為它繼承自Vehicle

public class Car extends Vehicle {
    public void displaySpeed() {
        // 可以访问父类的 protected 方法
        getSpeed();
    }
}

然而,Truck 類別與 Vehicle 不在同一個套件中,因此它無法存取 getSpeed() 方法。

// Truck 类在一个不同的包中
public class Truck {
    // 无法访问 Vehicle 中的 protected 方法
    // getSpeed();
}

結論

protected 存取權限修飾符提供了一種限制類別成員存取的方式,同時允許子類別和同一套件中的其他類別存取。它在設計具有繼承關係的類別以及限制特定套件中的存取權限時非常有用。

以上是Java 函數的存取權限修飾符之 protected 的應用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn