C# base關(guān)鍵字淺談
作者:佚名
這里介紹C# base關(guān)鍵字用于從派生類中訪問基類的成員,從靜態(tài)方法中使用C# base關(guān)鍵字是錯(cuò)誤的。C# base關(guān)鍵字主要用于面向?qū)ο箝_發(fā)的對(duì)態(tài)這方面。
C# base關(guān)鍵字用于從派生類中訪問基類的成員:調(diào)用基類上已被其他方法重寫的方法。指定創(chuàng)建派生類實(shí)例時(shí)應(yīng)調(diào)用的基類構(gòu)造函數(shù)?;愒L問只能在構(gòu)造函數(shù)、實(shí)例方法或?qū)嵗龑傩栽L問器中進(jìn)行。
示例:
在派生類中調(diào)用基類方法。
- //base關(guān)鍵字
- //訪問基類成員
- usingSystem;
- publicclassBaseClass
- {
- protectedstring_className="BaseClass";
- publicvirtualvoidPrintName()
- {
- Console.WriteLine("ClassName:{0}",_className);
- }
- }
- classDerivedClass:BaseClass
- {
- publicstring_className="DerivedClass";
- publicoverridevoidPrintName()
- {
- Console.Write("TheBaseClassNameis{0}");
- //調(diào)用基類方法
- base.PrintName();
- Console.WriteLine("ThisDerivedClassis{0}",_className);
- }
- }
- classTestApp
- {
- publicstaticvoidMain()
- {
- DerivedClassdc=newDerivedClass();
- dc.PrintName();
- }
- }
- /**//*
- 控制臺(tái)輸出:
- TheBaseClassNameisBaseClass
- ThisDerivedClassisDerivedClass
- */
- 在派生類中調(diào)用基類構(gòu)造函數(shù)。
- //keywords_base2.cs
- usingSystem;
- publicclassBaseClass
- {
- intnum;
- publicBaseClass()
- {
- Console.WriteLine("inBaseClass()");
- }
- publicBaseClass(inti)
- {
- num=i;
- Console.WriteLine("inBaseClass(int{0})",num);
- }
- }
- publicclassDerivedClass:BaseClass
- {
- //該構(gòu)造器調(diào)用BaseClass.BaseClass()
- publicDerivedClass():base()
- {
- }
- //該構(gòu)造器調(diào)用BaseClass.BaseClass(inti)
- publicDerivedClass(inti):base(i)
- {
- }
- staticvoidMain()
- {
- DerivedClassdc=newDerivedClass();
- DerivedClassdc1=newDerivedClass(1);
- }
- }
從靜態(tài)方法中使用C# base關(guān)鍵字是錯(cuò)誤的。C# base關(guān)鍵字主要用于面向?qū)ο箝_發(fā)的對(duì)態(tài)這方面。
【編輯推薦】
責(zé)任編輯:佚名
來(lái)源:
博客園