| 本文提供全流程,中文翻译。 Chinar 坚持将简单的生活方式,带给世人! (拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例) |
| Chinar —— 心分享、心创新! 助力理解 语法中 类 的继承关系 为新手节省宝贵的时间,避免采坑! |
全文高清图片,点击即可放大观看 (很多人竟然不知道)
1
Inherit —— 继承
C# —— 面向对象编程的三大特性:封装、继承、多态
这里我们来详细说说: 继承
通过简单的例子,来说明继承关系
3个子类,同时继承一个父类
那么父类中的函数,子类都将拥有
用中国的老话 “子承父业”理解,很是合适
也可以理解为: 老子会什么,儿子就会什么
2
Parent Class:Enemy —— 父类:总敌人类
我们以控制台程序,来举个例子
Enemy —— 敌人类,可以包含很多种敌人的父类
可以具备敌人通用的所有属性 / 函数
using System;/// <summary>/// 这里用中文来写命名空间,为了方便理解/// </summary>namespace 继承{ /// <summary> /// 敌人总类 /// </summary> class Enemy { public void Ai() { Console.WriteLine("这是怪物智能系统"); } public void Move() { Console.WriteLine("怪物移动方法"); } private float hp = 10; //血量 private float speed; //速度 /// <summary> /// 速度 /// </summary> public float Speed { get { return speed; } set { speed = value; } } /// <summary> /// HP血量 /// </summary> public float Hp { get { return hp; } set { hp = value; } } }}3
Subclass:Boss ——子类:首领
Boss —— 首领:属于怪物的一种,同样属于敌人,所以可以继承 Enemy 敌人类
这样,不用再 Boss 类中写任何方法,首领就具备敌人通用的所有属性 / 函数
using System;namespace 继承{ /// <summary> /// 首领怪物 /// </summary> class Boss : Enemy { /// <summary> /// 攻击 /// </summary> public void Attack() { Console.WriteLine("Boss正在猛烈的摇晃"); } /// <summary> /// 测试Boss /// </summary> /// <returns></returns> public float TestBoss() { return Hp = 100; } }}4
Subclass:Enemy1、Enemy2 ——子类:敌人1、敌人2
Enemy1、Enemy2 —— 代表两种敌人类型:属于怪物的一种,同样属于敌人,所以可以继承 Enemy 敌人类
这样,不用再 Enemy1、Enemy2 类中写任何方法,默认两种怪物,就具备敌人通用的所有属性 / 函数
class Enemy1 : Enemy { }class Enemy2 : Enemy { }5
Test Main ——主入口:测试
Enemy1、Enemy2 —— 代表两种敌人类型:属于怪物的一种,同样属于敌人,所以可以继承 Enemy 敌人类
这样,不用再 Enemy1、Enemy2 类中写任何方法,默认两种怪物,就具备敌人通用的所有属性 / 函数
using System;namespace 继承{ class Program { /// <summary> /// 主入口 /// </summary> /// <param name="args"></param> static void Main(string[] args) { Boss boss = new Boss(); //boss对象 boss.Ai(); //这个是boss的智能系统 Console.WriteLine(); Enemy e = new Boss(); //由其派生类完成了初始化,所以e对象Enemy对象 e.Move(); //在这里 相当于e.move Console.WriteLine(); ((Boss) e).Attack(); //强转为Boss类型,就可以访问其中的方法 Console.WriteLine(((Boss) e).TestBoss()); Console.ReadLine(); } }}输出结果:
这是怪物智能系统怪物移动方法Boss正在猛烈的摇晃100支持
May Be —— 搞开发,总有一天要做的事!
| 拥有自己的服务器,无需再找攻略! Chinar 提供一站式教程,闭眼式创建! 为新手节省宝贵时间,避免采坑! |
先点击领取 —— 阿里全产品优惠券 (享受最低优惠)
1 —— 云服务器超全购买流程 (新手必备!)
2 —— 阿里ECS云服务器自定义配置 - 购买教程(新手必备!)
3—— Windows 服务器配置、运行、建站一条龙 !
4 —— Linux 服务器配置、运行、建站一条龙 !
技术交流群:806091680 ! Chinar 欢迎你的加入
END
本博客为非营利性个人原创,除部分有明确署名的作品外,所刊登的所有作品的著作权均为本人所拥有,本人保留所有法定权利。违者必究
对于需要复制、转载、链接和传播博客文章或内容的,请及时和本博主进行联系,留言,Email: ichinar@icloud.com
对于经本博主明确授权和许可使用文章及内容的,使用时请注明文章或内容出处并注明网址
继续阅读与本文标签相同的文章
C#动态创建Xml-LinQ方式
C#语法-虚方法详解 Virtual 虚函数
-
数据可视化教你玩吃鸡——吃鸡 9 问 !
2026-05-27栏目: 教程
-
Java与CPU缓存是如何亲密接触的!
2026-05-27栏目: 教程
-
「python」邮件脚本
2026-05-27栏目: 教程
-
H3C交换机自动上传配置文件的设置,job命令详解
2026-05-27栏目: 教程
-
兑吧与国美、屈臣氏多家实体企业达成合作, 创新运营、赋能线下
2026-05-27栏目: 教程
