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

继承

小道7年前 (2018-08-20)C#学习6370

定义类的时候不指定父类,则父类是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://www.daobk.com/post/40.html

分享给朋友:

“继承” 的相关文章

类型转换Cast和Convert

类型转换Cast和Convert

把源类型赋值给目标类型,两个类型不一致的时候会发生类型转换。a=b,b是源,a是目标。隐式转换、显式转换。当目标类型一定能满足源类型转换过去后的要求的话就是隐式转换;如果当目标类型不一定能满足源类型转换过去后的要求的话就需要显式转换(程序员自己负责)。比如:把中国人转换为人是隐式转换,把人转换为中国...

foreach语句:依次读取数组中的元素。

foreach语句:依次读取数组中的元素。

foreach和for的区别:for可以不逐个遍历,比如每隔一个遍历一个,或者可以从后向前遍历。只能(只应该)在foreach对集合进行读,而不应该写。foreach语句:依次读取数组中的元素。         ...

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

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

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

机器人:具有模糊判断

机器人:具有模糊判断

自己动手写聊天机器人,能够回答不同城市的天气、回答感情问题、问的次数过多还会饿死,提问可以模糊提问(包含指定关键词)。问“天气:北京”就回复“今天北京天气很好。”。        static void&nbs...