面向对象:继承

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

/*
 * 复习:
 *     构造方法,对象初始化器:可以在创建对象的时候直接给属性赋值
 *     this:引用当前类的成员
 *     static:静态的,不用创建对象,就能使用类的成员
 *     
 *     第十三节课内容:
 *     面向对象三大特征:封装,继承,多态
 *     封装:将对象的特征和行为封装起来,不需要外界知道具体的实现细节(类)
 *     继承:通过继承一个类,可以自动拥有该类的成员
 *     
 *     举例:
 *       动物类:
 *       字段和属性:名字
 *       方法:吃东西
 *       猫类(继承动物类):
 *          继承动物类的字段和属性:名字
 *          继承动物类的方法:吃东西
 *          
 *     类的默认访问修饰符是:internal:(在项目内都可以访问)
 *     
 *     
 *     为什么要继承:
 *     1.减少代码重复编写
 *     2.可扩展
 *     3.可以实现多态
 *     
 *     Objeect类:所有类的父亲
 *     
 *     继承的注意事项:
 *     1.继承具有单一性,一个类只能有一个直接的父类
 *     2.多个类可以继承同一个父类
 *     3.可以多层继承,父类还可以在继承其他类
 */


namespace ConsoleApp13
{
    class Program
    {
        static void Main(string[] args)
        {
            Cat cat = new Cat();//创建cat对象,已经继承了Animal类(可以继承他里面的字段和方法)
            cat.Name = "小猫";
            cat.Eat();

            ObjectTest objectTest = new ObjectTest();
            Console.WriteLine(objectTest.ToString());
            Console.ReadKey();
        }
        class ObjectTest
        {

        }
        class Animal: ObjectTest
        {
            public string Name { get; set; }//创建字段
            public void Eat()//创建普通方法
            {
                Console.WriteLine(Name+"在吃东西");
            }
        }

        class Cat : Animal//继承了Animal类,具有单一性,一个类只能有一个直接的父类
        {
            public new void Eat()
            {
                Console.WriteLine(Name + "在吃猫粮");
            }
        }
        class Dog : Animal//多个类可以继承同一个父类
        {

        }
        class nume : Dog//可以多层继承
        {

        }

    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值