技术文摘
C#中继承与构造函数调用的实例展示
2025-01-02 03:24:18 小编
C#中继承与构造函数调用的实例展示
在C#编程中,继承是面向对象编程的重要特性之一,它允许我们创建一个新类,从已有的类中派生并继承其属性和方法。而构造函数在对象创建时起着初始化的关键作用。下面通过具体实例来展示C#中继承与构造函数调用的相关内容。
定义一个基类Person:
class Person
{
public string Name { get; set; }
public Person(string name)
{
Name = name;
Console.WriteLine($"Person的构造函数被调用,姓名为:{Name}");
}
}
接着,创建一个派生类Student,它继承自Person类:
class Student : Person
{
public int StudentId { get; set; }
public Student(string name, int studentId) : base(name)
{
StudentId = studentId;
Console.WriteLine($"Student的构造函数被调用,学号为:{StudentId}");
}
}
在上述代码中,Student类通过:符号继承了Person类。在Student类的构造函数中,使用base关键字调用了基类Person的构造函数,传递了name参数。
下面是在Main方法中创建Student类对象的示例:
class Program
{
static void Main()
{
Student student = new Student("张三", 1001);
}
}
当执行这段代码时,首先会调用基类Person的构造函数,输出Person的构造函数被调用,姓名为:张三,完成对Name属性的初始化。然后再调用派生类Student的构造函数,输出Student的构造函数被调用,学号为:1001,完成对StudentId属性的初始化。
需要注意的是,如果派生类的构造函数没有显式地调用基类的构造函数,编译器会默认调用基类的无参构造函数。如果基类没有无参构造函数,就必须在派生类的构造函数中显式地调用基类的有参构造函数。
通过这个实例可以清晰地看到C#中继承与构造函数调用的关系和具体实现方式。合理运用继承和构造函数,能够提高代码的复用性和可维护性,使程序结构更加清晰和合理。
- JS中this指向疑惑解析:obj.foo()与foo()指向window对象原因剖析
- 弹性布局下子元素设flex-shrink: 1仍溢出原因何在
- 浏览器缩放后 px 为何会变成小数
- 选中的div元素怎样巧妙封装在form表单中
- JavaScript实现简易购物车功能的方法
- 弹性布局收缩不换行时图像溢出的解决方法
- 浏览器缩放后元素尺寸显示小数点原因及避免方法
- JavaScript实现简易购物车功能的方法
- 在HTML页面中显示 符号的方法
- 小程序使用 SVG 实现不规则进度条的方法
- 怎样借助抽取函数与优化循环条件简化判断三子相连情况的代码
- Web开发中怎样优雅化解共用导航栏难题
- 把视频会议融入远程医疗或心理健康应用程序
- HTML必备元数据标签:字符编码、视口、描述和关键词的设置方法
- Vue实现双图片合并及适配不同页面大小的方法