欢迎光临
我们一直在努力

C# base关键字浅谈

C# base关键字用于从派生类中访问基类的成员:调用基类上已被其他方法重写的方法。指定创建派生类实例时应调用的基类构造函数。基类访问只能在构造函数、实例方法或实例属性访问器中进行。

示例:

在派生类中调用基类方法。


 
  1. //base关键字  
  2. //访问基类成员  
  3. usingSystem;  
  4.  
  5. publicclassBaseClass  
  6. {  
  7. protectedstring_className="BaseClass";  
  8.  
  9. publicvirtualvoidPrintName()  
  10. {  
  11. Console.WriteLine("ClassName:{0}",_className);  
  12. }  
  13. }  
  14.  
  15. classDerivedClass:BaseClass  
  16. {  
  17. publicstring_className="DerivedClass";  
  18.  
  19. publicoverridevoidPrintName()  
  20. {  
  21. Console.Write("TheBaseClassNameis{0}");  
  22. //调用基类方法  
  23. base.PrintName();  
  24. Console.WriteLine("ThisDerivedClassis{0}",_className);  
  25. }  
  26. }  
  27.  
  28. classTestApp  
  29. {  
  30. publicstaticvoidMain()  
  31. {  
  32. DerivedClassdc=newDerivedClass();  
  33. dc.PrintName();  
  34. }  
  35. }  
  36.  
  37. /**//*  
  38. 控制台输出:  
  39. TheBaseClassNameisBaseClass  
  40. ThisDerivedClassisDerivedClass  
  41. */  
  42. 在派生类中调用基类构造函数。  
  43. //keywords_base2.cs  
  44. usingSystem;  
  45. publicclassBaseClass  
  46. {  
  47. intnum;  
  48.  
  49. publicBaseClass()  
  50. {  
  51. Console.WriteLine("inBaseClass()");  
  52. }  
  53.  
  54. publicBaseClass(inti)  
  55. {  
  56. num=i;  
  57. Console.WriteLine("inBaseClass(int{0})",num);  
  58. }  
  59. }  
  60.  
  61. publicclassDerivedClass:BaseClass  
  62. {  
  63. //该构造器调用BaseClass.BaseClass()  
  64. publicDerivedClass():base()  
  65. {  
  66. }  
  67.  
  68. //该构造器调用BaseClass.BaseClass(inti)  
  69. publicDerivedClass(inti):base(i)  
  70. {  
  71. }  
  72.  
  73. staticvoidMain()  
  74. {  
  75. DerivedClassdc=newDerivedClass();  
  76. DerivedClassdc1=newDerivedClass(1);  
  77. }  

从静态方法中使用C# base关键字是错误的。C# base关键字主要用于面向对象开发的对态这方面。

【编辑推荐】

  1. 如何用C#和ADO.NET访问
  2. 浅析C# Switch语句
  3. C#验证输入方法详解
  4. 简单介绍C# 匿名方法
  5. C# FileSystemWatcher对象

赞(0) 打赏
未经允许不得转载:九八云安全 » C# base关键字浅谈

评论 抢沙发