news 2026/6/10 15:49:11

子类构造函数如何调用父类构造以及类成员和方法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
子类构造函数如何调用父类构造以及类成员和方法

子类构造函数


//调用子类构造函数,首先先去父类的不带参数构造参数
//想调用父类的带参数构造函数,在子类的构造函数添加:base(参数1,参数2)调用父类有参数构造函数

//创建子类的对象
Student s1 = new Student(); //调用子类构造函数,首先先去父类的不带参数构造参数
Student s2 = new Student("11", 10);// 调用的是子类带参数构造函数,首先调用还是父类不带参数的构造函数,


// 能不能调用子类的有参数构造能够触发父类有参数构造函数,子类如何调用父类的构造
Student s3 = new Student("张三"); //调用带一个参数构造


Console.ReadKey();
}
}
class People
{
public string Name { get; set; }
public int Age { get; set; }
public People()
{
Console.WriteLine("People父类构造函数");
}
public People(string a,int b)
{
//带参数的构造函数
Console.WriteLine("People带参数的构造函数");
Name = a;
Age = b;
}

}
class Student:People
{
// Name 和Age属性可以被继承过来
public int Id { get; set; }
public Student()
{
Console.WriteLine("Student子类构造函数");
}
public Student(string a,int b )
{
Console.WriteLine("子类的带参数的构造函数");
}
//this 当前类对象
//base 父类对象
public Student(string a):base (a,20)
{
//调用这个方法触发父类带参数构造函数
Console.WriteLine(a+"验证在子类如果调用父类有参数的构造 base基类 ,父类");
}


//类成员和方法

分为静态和非静态俩大类


//静态成员或方法 找类名.进行使用,存储类中,是类共有,
//非静态的成员或方法 找对象.进行使用 存储在每一个对象里面

//静态方法 不能访问非静态成员或方法,可以访问静态的成员或方法
//非静态方法:可以访问静态的成员或方法,也可以访问非静态的方法或成员

People p1 = new People();
p1.Name = "张三";// 对象.属性
People.Count = 20;//类.属性

p1.Test1(); //非静态方法
People.Test2();// 静态方法调用

Console.ReadKey();
}
}

public class People
{
public string Name { get; set; } //非静态成员
public static int Count { get; set; } // 静态成员

public void Test1() //非静态方法:可以访问静态的成员或方法,也可以访问非静态的方法或成员
{
Console.WriteLine("我是非静态方法Test1");

Console.WriteLine(this.Name+"-----"); //this在本类里面可以this代表当前对象,this在本类可以省掉
Console.WriteLine(Count+"-------");
People.Test2();//People在本类可以省掉
}
public static void Test2()//静态方法 不能访问非静态成员或方法,可以访问静态的成员或方法
{
Console.WriteLine("我是静态方法Test2");
Console.WriteLine(Count+"+++++");
//Console.WriteLine(this.Name+"+++++++");
// Test2(); 不要在自己方法里面调用自己 导致死循环

}

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 6:01:24

基于微信小程序的城市公交查询系统

Spring Boot基于微信小程序的城市公交查询系统是一种现代化的城市公交信息服务解决方案。以下是对该系统的详细介绍: 一、系统背景与意义 随着城市化进程的加快和人口持续增长,城市公共交通系统面临着前所未有的挑战。传统的公交查询方式存在信息更新不及…

作者头像 李华
网站建设 2026/6/10 13:36:03

基于Hadoop的网购电脑行为分析系统

Spring Boot基于Hadoop的网购电脑行为分析系统是一个专为电商企业设计的解决方案,旨在通过大数据技术和Hadoop平台,对网购电脑的相关数据进行收集、存储、处理和分析,以深入了解消费者的网购电脑行为,进而优化营销策略和提升用户体…

作者头像 李华
网站建设 2026/6/10 13:34:49

最近在折腾工控项目的时候,发现不少同行在找汇川PLC的C#通讯方案。正好手头有个实战项目积累的源码库,今天挑几个关键实现点跟大家唠唠

C#汇川全系列上位机适配源码 C#上位机读写PLC案例,TCP通信,通讯部分封装成类,没有加密,都是源码,注释齐全,纯源码,此版本支持汇川全系列PLC的ModebusTCP通讯的读写操作。 C#上位机与汇川全系列P…

作者头像 李华
网站建设 2026/6/9 18:09:42

前端流程图插件对比选型,这一篇就够了

最近遇到一个需要同时支持预览word、excel、pdf、ppt的需求,在此记录一下,目前只是简单实现预览的功能,没有作深入的了解。 1.非常简单的一个方法如下(亲测同时支持word、excel、pdf、ppt文件类型), 详情可查看文档 …

作者头像 李华
网站建设 2026/6/10 9:30:07

达特茅斯学院突破:AI视频中人物身份跨场景识别

这项由达特茅斯学院的麦子阳(Ziyang Mai)和戴宇荣(Yu-Wing Tai)共同完成的研究发表于2024年12月的计算机视觉领域顶级会议论文中,论文编号为arXiv:2512.07328v1。有兴趣深入了解的读者可以通过该编号查询完整论文。当我…

作者头像 李华
网站建设 2026/6/10 15:40:45

零基础自学网络安全:从小白到入门实战指南

文章目录 一、什么是网络安全二、网络安全怎么入门三、网络安全的知识多而杂,怎么合理安排学习? 1、基础阶段2、渗透阶段3、安全管理(提升)4、提升阶段(提升) 四、网络安全学习路线 1. 网络安全概念学习&am…

作者头像 李华