当前位置:首页 > C#学习 > 正文内容

继承

小道6年前 (2018-08-20)C#学习5782

定义类的时候不指定父类,则父类是Object类。Object类是任何类的直接或者间接父类。

    class Program
    {
        static void Main(string[] args)
        {
            中国人 c = new 中国人();
            c.Name = "王小二";
            c.Age = 15;
            c.功夫();//调用 中国人类 功夫 方法,输出结果是:打!
            c.户口 = "北京";
            c.SayHello();//调用 中国人类 SayHello 方法,输出结果:王小二

            韩国人 k = new 韩国人();
            k.Name = "朴小姐";
            k.Age = 25;
            k.吃饭 = "香";
            k.饭量();//调用 韩国人类 饭量 方法,输出结果:饭量小

            Person p = c;//可以将子类的值 赋值给 父类,  系统要一个人,给了一个中国人,可以的。
            p.SayHello();//调用 中国人类 SayHello 方法,输出结果:王小二
            // 中国人 c1 = p;  //父类的值 无法赋值子类。   系统要一个 中国人,但是你给一个人,不行的。
            中国人 C2 = (中国人)p;//可以强制转换,但是可能会报错,程序员要对 结果负责。  可以将一个人强制转换成 中国人。
            Console.ReadKey();
        }
    }
    //Object是所有类的基类。没有指定父类那么父类就是Object.
    class Person  //  可以写成    class Person : Object 默认不显示
    {
        public int Age { get; set; }
        public string Name { get; set; }
        public void SayHello()
        {
            Console.WriteLine("{0}",this.Name);
        }
    }
    class 中国人 : Person //继承,用:分割。中国人这个类可以继承Person 这个类的所有属性、方法。
    {
        public string 户口 { set; get; }
        public void 功夫()
        {
            Console.WriteLine("打!");
        }
    }
    class 韩国人 : Person
    {
        public string 吃饭 { set; get; }
        public void 饭量()
        {
            Console.WriteLine("饭量小");
        }
    }

输出结果:

image.png

扫描二维码推送至手机访问。

版权声明:本文由小道发布,如需转载请注明出处。

本文链接:https://daobk.com/post/40.html

分享给朋友:

“继承” 的相关文章

枚举enum

枚举enum

确定数量、确定值的几个取值:东西南北、男女、上中下。和用字符串比起来,用枚举的好处就是限定了变量的取值范围,程序处理起来更方便。namespace 枚举//命名空间 {     enum xb { 男, 女...

数组:​从一个整数数组中取出最大的整数。

数组:​从一个整数数组中取出最大的整数。

保存多个值。任意类型都可以声明数组。int[] nums = {5,3,8};//数组可以直接赋值。 int[] nums = new int[3];//也可以先声明数组 不赋值。   &...

字符串的分割:从日期字符串("2008-08-08")中分析出年、月、日;

字符串的分割:从日期字符串("2008-08-08")中分析出年、月、日;

string[] Split(params char[] separator):将字符串按照指定的分割符分割为字符串数组;string[] Split(char[] separator, StringSplitOptions options)将字符串按照指定的char分割符分割为字符串数组( opt...

函数的ref、out参数

函数的ref、out参数

函数参数默认是值传递的,也就是“复制一份”ref必须先初始化,因为是引用,所以必须先“有”,才能引用,而out则是内部为外部赋值,所以不需要初始化,而且外部初始化也没用。ref应用场景内部对外部的值进行改变,out则是内部为外部变量赋值,out一般用在函数有多个返回值的场所。  ...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。