在Java中,子類可以訪問父類的public和protected成員變量。如果父類的成員變量被聲明為public,那么子類可以直接訪問這些變量。如果父類的成員變量被聲明為protected,那么子類也可以直接訪問這些變量,即使子類在不同的包中。
然而,如果父類的成員變量被聲明為private,那么子類將無法直接訪問這些變量。在這種情況下,子類可以通過父類提供的public或protected方法(如getter和setter方法)來間接訪問這些私有成員變量。
以下是一個簡單的示例:
// 父類
public class Parent {
public String publicVar;
protected String protectedVar;
private String privateVar;
public String getPrivateVar() {
return privateVar;
}
public void setPrivateVar(String privateVar) {
this.privateVar = privateVar;
}
}
// 子類
public class Child extends Parent {
public void accessVariables() {
publicVar = "Public Variable";
protectedVar = "Protected Variable";
// privateVar = "Private Variable"; // 無法直接訪問私有成員變量
// 通過getter和setter方法訪問私有成員變量
setPrivateVar("Private Variable");
String privateVarValue = getPrivateVar();
}
}
在這個例子中,Child
類繼承了Parent
類,并訪問了publicVar
和protectedVar
。對于privateVar
,Child
類通過調用setPrivateVar()
和getPrivateVar()
方法來間接訪問。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。