面向对象-封装、继承、多态

面向对象-封装、继承、多态

面向对象-封装

一、封装:

private 数据类型 _名字;   --成员变量

public 默认一致 名字     

属性 {  get{ return _名字; }  set{ _名字 = value; } }

类中不仅可以有成员变量和属性,还可以有成员方法

访问修饰符 -  4个

public - 公共的,任何地方都可以访问,但是需要引用 命名空间

private - 私有的,类的内部才可以访问

internal - 内部的,默认的,程序集中可以访问,程序集就是命名空间

protected - 被保护的,类的内部和类的父类和子类中可以访问

二、继承:

继承语法格式:  类名 : 父类名

子类 , xxx的派生类,超类

父类 , 基类

一个父类可以有无数个子类 一个子类可以有1个父类(亲爹)

子类并不是可以继承父类中所有的东西,而是可以继承父类中允许子类继承的内容,这个允许条件是依靠 访问修饰符 来做的权限

fly.cs中:

复制代码
namespace 继承
{
    public class Fly
    {
        public string Fling()
        {
            return "我会飞行!!!";
        }


    }
}
复制代码

plane.cs中:

namespace 继承
{
    public class Plane : Fly
    {
    }
}

bird.cs中:

namespace 继承
{
    public class Bird : Fly
    {
    }
}

program.cs中:

复制代码
namespace 继承
{
    class Program
    {
        static void Main(string[] args)
        {
            Plane pl = new Plane();
            Console.WriteLine(pl.Fling());
            Bird b = new Bird();
            Console.WriteLine(b.Fling());

            Console.ReadKey();
        }
    }
}
复制代码

三、多态:类的多种形态

有了继承才有了多态

定义关键字virtual 写在访问修饰符之后,

让方法变成 虚方法 可以被子类进行重写, override 只能重写函数体

原文地址:https://www.cnblogs.com/zhulijun/p/6718802.html