在不同類別中使用 Java 函數時,請遵循下列存取權限規則:預設存取權限僅限於同一套件內的類別。包可見性與預設存取權限相同,但適用於同一模組中的所有類別。受保護的存取權限僅限於子類別和同一套件中的類別。公共存取權限在所有類別中可見。
Java 函數的存取權修飾符之在不同類別中使用的規則
Java 中的存取權修飾符用於控制類別、方法和欄位的可見性範圍。在不同類別中使用函數時,需要遵守以下規則:
1. 預設存取權限(無修飾符)
2. 套件可見性(default)
3. protected 存取權
4. public 存取權
實戰案例
考慮以下程式碼:
// MySuperClass.java public class MySuperClass { protected void protectedMethod() { // ... } public void publicMethod() { // ... } }
// MySubClass.java public class MySubClass extends MySuperClass { // 可访问父类的 protected 和 public 方法 void accessProtected() { protectedMethod(); } void accessPublic() { publicMethod(); } }
// MyOtherClass.java public class MyOtherClass { // 无法访问父类的 protected 或 public 方法 void accessProtected() { // 编译错误: protectedMethod() 具有 protected 访问权限,在此包外不可访问 } void accessPublic() { // 编译错误: publicMethod() 具有 public 访问权限,但在不同的模块中不可访问 } }
在這個範例中,MyOtherClass
無法存取MySuperClass
中的protectedMethod()
和publicMethod( )
,因為它們不是在同一套件中或不是MySuperClass
的子類別。
注意事項
以上是Java 函數的存取權限修飾符之在不同類別中使用的規則的詳細內容。更多資訊請關注PHP中文網其他相關文章!