訪問父類屬性
A. 父類與子類有相同的屬性,怎麼訪問父類的屬性值
集候 父類屬性保護想要調用父類屬性必須使用父類象super 調用 訪問類沒X屬性所調用使用this或super調用屬性候論thissuper 調用都父類X屬性
B. 請問:java中,要訪問父類的屬性是不是不能只用一般函數如果只用一般函數是不是訪問的只是其特點
額......什麼叫做一般函數......
如果父類的屬性是private的,那麼不能直接訪問,如果是protected和public的,可以直接訪問.
舉個例子吧:
class A{
private int a =1;
protected int b =2;
public int c =3;
protected int getValueOfa(){
return this.a;
}
}
class B extends A{}
那麼對於B類而言,可以直接訪問A類的b,c兩個屬性的值,但只能通過getValueOfa()方法來獲得a的值(換句話說如果沒有這個方法的話就不能獲得a的值了).
C. C#中在子類中訪問父類成員的關鍵字是什麼
使用base.調用父類裡面的屬性
public class parent
{
public string a;
}
public class child :parent
{
public string getparent()
{
return base.a;
}
}
D. JAVA可以在子類中用this訪問父類中的方法和屬性么
如果父類的屬性不是私有的並且沒有geterseter方法,那麼子類不能訪問.其他的情況的話, 用this和super都可以方法到
E. java為什麼可以通過繼承父類的公有方法訪問父類的私有屬性
java中子類本來就可以通過繼承公共方法訪問父類的私有變數啊,
就算不是父子關系,一個類也可以通過另一個類的公共方法訪問它的私有變數了。
子類是訪問了父類的方法,記住是方法而不是屬性
父類的方法操作了私有屬性,這跟子類沒有任何關系
F. 關於java 繼承類 子類調用父類方法訪問屬性問題
say這個方法是定義在父類Dog中的,所以他直接調用了父類的name,輸出「小劉」。
如果把say這個方法復制一下放到HomeDog中,那它會調用HomeDog的name,輸出「小明」。
G. 有關子類繼承父類,子類通過父類的get方法訪問父類的屬性,問題是:get得到的屬性是誰的例子在下面:
你沒提供getLicense方法的位置呀,如果子類有,那就是子類的
子類沒有,那就是父類的
H. 子類可以訪問父類中定義的默認變數嗎
int a;
沒有任何修飾的屬性是包訪問許可權。。
只要那個子類和他同包就能訪問。。 如果不再同一個包中就不能訪問。。。。
JAVA中有四種訪問許可權:private,protected,public,還有就是什麼都不寫。
private私有訪問許可權,只有在同一個類里才能訪問。
public公共訪問許可權,所有的類都可以訪問,無論在不在一個包中。
什麼都不寫,默認變數,是包訪問許可權,也就是說在同一個包類就可以訪問。
protected是繼承訪問許可權,在同一個包中的可以訪問,對於不再同一個包中的類,如果該類是父類的子類,則可訪問。不再同一個包中的不是繼承的類就不可以訪問。
默認變數和protected變數的共同點是在同一個包中都可以訪問,但是如果不在同一個包中,但是有繼承關系,protected變數就可以訪問。但默認變數只要是不同的包,無論有沒有繼承關系都不能訪問。
希望能幫到你~!
I. php如何通過子類繼承父類共有方法訪問父類私有屬性
在父類中加個public方法,
如private $aaa = 'test';
public function getAAA(){
return $this->aaa;
}
在子類中調用parent::getAAA();就可以獲得父類私有屬性
當然如果你想獲取多個,可以改成動態變數名,
getAAA($v){
return $this->{$v};
}
J. php子類可以繼承和訪問父類的私有屬性和方法嗎
你這樣理解也可以,當父類有私有的方法和屬性,子類是繼承不到的,所以子類不能訪問父類的私有方法和屬性。java
特性,private:類中只要限定為private的成員,只能被這個類本身訪問