C# 不包含采用0个参数的构造函数

  • Post author:
  • Post category:其他



内容:







一、构造函数是什么?






(1)构造函数 ,是一种特殊的方法。



构造函数具有与类相同的名称(


方法名与类名一样


),它



主要用来在创建对象时初始化对象, 即为对象成员变量



赋初始值,总与new运算符


一起使用在创建对象的语句中。没有返回值。



(2)如果不指定构造函数,则类有一个默认的无参构造函数






写一个类,如果没有写任何的构造函数,那么这个类有一个默认的无参数的构造函数


)。




无论何时,只要使用 new 运算符实例化对象,并且不为 new 提供任何参数,就会调用

默认构造函数



。除非类是Static的,否则 C# 编译器将为无构造函数的类提供一个公共的

默认构造函数



,以便该类可以实例化。


(2)构造函数必须是在类里的一级声明,并且命名为类名。


(3)构造函数可以有参数,new对象的时候传递函数参数即可。


(4)如果指定了构造函数,则不再有默认的无参构造函数,如果需要无参构造函数,则需要自己来写。


(5)


构造函数可以重载,也就是由多个参数不同的构造函数。



(6)构造函数是不能继承的,但是可以被调用,任何一个子类的构造函数


执行前都会调用父类,所以父类需要写一个无参数的构造函数。





二、我的错误







导致了下面那个图片有问题出现:



如果写一个没有参数的构造函数,就不会出现上面那个图片的问题了。

下图的 Public  class  Student后面没有参数,因


此Student  yn  = new  Student();就可以正常运行了。




三、重载和重写的区别:




重写是子类的方法覆盖父类的方法,要求方法名和参数都相同;一般用于子类继承父类时重写父类中的方法。





重载是在同一个类中的两个或两个以上的方法,拥有相同的方法名,但是参数却不相同,方法体也不相同,最常见的



重载的例子就是类的构造函数,可以参考


API帮助文档看看类的构造方法



四、总结


如果我不去敲代码,我也不会发现这个问题。而我敲代码了,然后发现了这个问题,这就是行动下移的好处。看视频一定要跟着敲一敲,只是纯粹的看,一点收获也没有的。





版权声明:本文为tgbyn原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。