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

继承

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

定义类的时候不指定父类,则父类是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

分享给朋友:

“继承” 的相关文章

类型转换Cast和Convert

类型转换Cast和Convert

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

函数:给我一个字符串,然后字符串使用我指定的分隔符来进行分割

函数:给我一个字符串,然后字符串使用我指定的分隔符来进行分割

函数就是将一堆代码进行重用的一种机制。函数就是一段代码,这段代码可能有输入的值(参数),可能会返回值。一个函数就像一个专门做这件事的人,我们调用它来做一些事情,它可能需要我们提供一些数据给它,它执行完成后可能会有一些执行结果给我们。要求的数据就叫参数,返回的执行结果就是返回值。有了函数写代码就像拼积...

字符串的处理练习

字符串的处理练习

接收用户输入的字符串,将其中的字符以与输入相反的顺序输出。            Console.WriteLine("请输入一个字符串");//提示用户输入一...

面向对象版聊天机器人

面向对象版聊天机器人

机器人有不同的名字、维护自己的FullLevel,可以SayHello(我叫***),可以喂食(Eat(int foodCount)),可以对它说话(Speak),对异常情况(错误的喂饭数字,喂的太多撑死了)进行处理,有两个机器人供选择,一开始通过1、2数字选择聊天机器人。  &...