C# —— 子类访问父类

创建子类对像时候 默认调用父类的无参数的构造函数,不会调用带参数构造函数

创建子类对象的时候可以调用父类的带参数的构造函数,在子类的构造函数后面:base()调用父类的构造

动物类 父类

cs 复制代码
class Animal 
{
    public string Name { get; set; }
    public char Sex;
    public Animal()
    {
        Console.WriteLine("我是Animal的五参数的构造函数");
    }
    public Animal(string n1, char s1)
    {
        Name = n1;
        Sex = s1;
        Console.WriteLine("我是Animal的有参数的构造函数");
    }
}

小狗类 子类

cs 复制代码
class Dog :Animal
{
    public Dog()
    {
        Console.WriteLine("我是Dog的无参数的构造函数");
    }

    // :base()基础类,父类, :base()调用父类的构造函数,父类又是带参数的构造函数,所以base传递两个参数
    // base(n1,'男')两个参数分别是(藏獒,'男')
    public Dog(string n1):base(n1,'男')
    {
        Console.WriteLine("我是Dog类的带参数的构造函数");
    }
}

Main

cs 复制代码
Dog jinmao = new Dog();
Console.WriteLine(jinmao.Name +"," +jinmao.Sex);

Dog zangao = new Dog("藏獒");
Console.WriteLine(zangao.Name +","+zangao.Sex);
相关推荐
唐青枫6 分钟前
对象到底住在哪里?C#.NET 托管堆从分配、GC 到内存排查
c#·.net
白远山11 分钟前
家政服务家政社区派单实战:调度系统架构设计与实现指南
java·开发语言·小程序·架构·需求分析
DevRay1 小时前
Java 21虚拟线程深度实战:告别线程池焦虑,百万并发吞吐量直接翻倍(原理+代码+避坑)
java·开发语言
free-elcmacom1 小时前
C++学习<1>程序分区
开发语言·c++
醉颜凉1 小时前
Java 必看:如何彻底避免 HashMap 多线程死循环问题?
java·开发语言
默 语1 小时前
Java新手入门:从零开始安装JDK并配置环境变量
java·开发语言·python·mysql·group by·1024程序员节·数据去重
Brilliantwxx2 小时前
【STM32】 I2C_EEPROM_test 工程(实战篇)
开发语言·stm32·单片机·嵌入式硬件·ecmascript
清水白石0082 小时前
Python 异步编程深度解析:Cancellation 到底是异常还是控制信号?从 asyncio 取消机制到企业级事务设计最佳实践
开发语言·python
fogota2 小时前
Emoji与Segoe MDL2 Assets的比较
c#·wpf
kolyle2 小时前
万级 QPS 下的 Token 分发系统架构:从 0 到 1 跑通 AI 时代的“水电煤“
开发语言·人工智能·系统架构·token·qps·极智词元·大模型私有化部署