C#知识点梳理(二)

@TOC面向对象 构造函数 访问修饰符 里氏转换原则 Base override New关键字小讲解

面向对象

抽象的程序设计思想具有灵活性、重用性、扩展性
先有面向过程后有面向对象
哪些东西具备面向对象思想?
exam:寻路算法类{三点寻路(){},两点寻路(){}}
继承打破封装 多态:更好地实现面向对象
Unity里怎么实现一个按钮点击事件?
1.我知道的在unity里有4种<先简略概述>
2.第一种,UGUI创建一个按钮,在button上添加OnClick点击事件,它需要一个对象加一个方法。第二种,直接在代码里给button对象使用OnClick,Addlistener(添加一个方法),使用IPointClick接口,OGUI写button。<详细解释>

构造函数

类的一个成员
创建对象的时候调用构造函数 创建类的时候会调用类的构造函数 接口、数组没有构造函数
作用:初始化类的成员 创建对象
存在一个默认无参构造函数,只要写了构造函数就替代默认构造函数。

访问修饰符

1.无参构造函数调用看不见
2.调用父类的公开成员,受保护的Internal内部的
3.protected internal受保护的内部的
4.internal只能本程序集访问,添加引用都不可以
5.protected不可以作为类的访问修饰符,使用范围本类及子类,子类可以访问父类受保护成员,其他成员一概不行
6.protected internal只能本程序集的父子类可以使用,其他成员一概不行

里氏转换原则是什么

前提:有继承关系出现
所有基类可以出现的地方,子类一定可以出现
子类类型的子类对象,可以转换为父类类型

Base override New关键字

Base:继承之后才有base This:指自身 本身 对象本身
base在子类调用父类构造函数时,把参数一并传给父类
子类创建对象,会调用父类构造函数
先调用父类再调用子类构造函数
override:重写的方法,不管是子类对象还是子类对象
转换成父类类型时,所调用的方法都是子类的。一
开始声明的类型
New:new关键字 子类对象如果转换成父类类型时,所调用的
方法,new关键字无法覆盖。类型决定调用的方法。

你可能感兴趣的:(C#知识点梳理(二))