C#继承构造函数实现及调用浅析

C#类的继承,构造函数实现及其调用顺序

创新互联建站是一家专业提供涪陵企业网站建设,专注与成都做网站、成都网站制作、H5场景定制、小程序制作等业务。10年已为涪陵众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。

类层层派生,在实例化的时候构造函数的调用顺序是怎样的? --从顶层基类开始向子类方向顺序调用无参构造.

默认构造(无参构造)和带参构造什么时候调用?--默认将从顶层父类的默认构造一直调用到当前类的默认构造.

下面是C#继承构造函数实现及调用示例:

 
 
 
  1. /**//*--===------------------------------------------===---
  2. 作者:许明会
  3. 日期:类的派生和构造函数间的关系,调用层次及实现
  4. 日期:2009年7月18日 17:30:43
  5. 若希望类能够有派生类,必须为其实现默认构造函数.
  6. 若类没有实现带参构造,编译器将自动创建默认构造函数.
  7. 若类实现了带参构造,则编译器不会自动生成默认构造.
  8. --===------------------------------------------===---*/
  9. using System;  //C#继承构造函数实现及调用
  10. namespace xumh
  11. {
  12. public class MyClass
  13. {
  14. public MyClass()
  15. {
  16. Console.WriteLine("MyClass:默认构造函数");
  17. }
  18. public MyClass(int a, int b)
  19. {
  20. Console.WriteLine("MyClass带参构造:a={0}, b={1}.", a, b);
  21. }
  22. }
  23. public class MyClass2 : MyClass
  24. {
  25. public MyClass2()
  26. {
  27. Console.WriteLine("MyClass2:默认构造函数");
  28. }
  29. public MyClass2(int a, int b)
  30. {
  31. Console.WriteLine("MyClass2带参构造:a={0}, b={1}.", a, b);
  32. }
  33. }
  34.  //C#继承构造函数实现及调用
  35. public class MyClass3 : MyClass2
  36. {
  37. public MyClass3()
  38. {
  39. Console.WriteLine("MyClass3:默认构造函数");
  40. }
  41. public MyClass3(int a, int b)
  42. {
  43. Console.WriteLine("MyClass3带参构造:a={0}, b={1}.", a, b);
  44. }
  45. }
  46. public class runMyApp
  47. {
  48. static void Main()
  49. {
  50. MyClass3 my = new MyClass3(3,4);
  51. }
  52. }
  53. }  //C#继承构造函数实现及调用
  54. /**//*--===------------------------------------------===---
  55. 输出如下:
  56. MyClass:默认构造函数
  57. MyClass2:默认构造函数
  58. MyClass3带参构造:a=3, b=4.
  59. --===------------------------------------------===---*/

C#继承构造函数实现及调用的基本情况就向你介绍到这里,希望对你学习了解C#继承构造函数实现及调用有所帮助。

分享标题:C#继承构造函数实现及调用浅析
网页链接:http://www.stwzsj.com/qtweb/news14/11614.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联