附录一 面向对象基础
对象:一切事物皆为对象,对象是一个自包含的实体,用一组可识别的特性和行为去标示。
类:具有相同属性和功能的抽象集合。
构造方法:对类进行初始化,与类同名,无返回值,也不需要void,在new时调用,所有类都有构造方法,如果你不写,系统会默认生成空的构造方法,如果你写了,这默认的自动失效。
方法重载:提供了创建同名多个方法的能力(可扩展性),这些方法需要不同的参数类型。(构造函数与普通方法均可重载)作用:可在不改变原方法的基础上,新增功能。
变量:私有的时候叫字段,共有的时候交方法。
属性:是一个方法或一对方法,但在调用时它是一个字段,字段就是存储类要满足设计所需要的数据。
封装:优点:1.良好的封装能减少耦合。2.类内部的实现可以自由的修改。3.类具有清晰的对外接口。
继承:代表一种is-a的关系,即猫是哺乳动物,猫就是一个子类(派生类),哺乳动物是一个父类(基类)。
① 子类拥有父类非private的属性和功能。
② 子类具有自己的属性和功能,即,子类可以扩展自己的父类没有的功能。
③ 子类还可以以自己的方式实现父类的功能(重写)
注意:子类的继承访问权限要小于父类访问权限。
优点:继承使得所有子类公共部分都放在父类,使得代码得到了共享,这就避免了重复,使得修改和扩展继承而来的实现都较为容易。
缺点:父类变,子类必须变,继承会破坏包装,父类实现的的细节暴露给子类。、
耦合性:藕断丝连,继承是一种类与类之间强耦合的关系。
多态:表示不同的对象可以执行相同的动作,但要通过他们自己来实现代码来执行。
① 子类以父类的身份出现
② 子类在工作时以自己的身份出现
③ 子类以父类的身份出现时,子类特有的属性和方法不可用

执行过程:多态的原理是当方法被调用时,无论对象是否被转换为基类,都只有位于对象继承末端的方法实现被调用。
重构:
抽象类:没有实际意义,只能用来被继承
注意:
① 抽象类不能实例化
② 抽象是必须被子类重写的方法,不重写无意义,可以看做是没有实现体的虚方法
③ 如果类中包含抽象方法必须定义为抽象类,不论是否包含其他一般方法
美:拥有尽可能多的共同代码,拥有尽可能少的数据
接口:把隐式公共方法和属性组合起来,以封装成一个特定的集合。
接口与抽象类区别:
第一:类是对对象的抽象,抽象类是对类的抽象,接口是对类中成员的抽象
第二:如果行为跨越不同的类,可使用接口;对于一些相似的类与对象,用继承抽象类
第三:从设计角度讲,抽象类是从子类中发现公共的东西,泛华出父类,然后子类继承父类,而接口是根本不知道子类的存在,方法如何实现还不确认,预先定义。
第四:接口是对类的局部(行为)进行抽象,抽象类是对类的整体进行抽象,如果只考虑抽象,那么接口和抽象类基本没啥差别
委托(delegate)与事件(event):
委托是一种引用方法的类型,一旦为委托分配了方法,那么委托与方法具有完全相同的行为
委托是对函数的封装,可以当做给方法特征指定一个名称,而事件是委托的一种特殊形式,当发生有意义的事情时,事件对象处理通知过程。
泛型:区别于集合的是泛型是安全的类型,避免了在操作中的装箱拆箱的过程,关键在于他那个类型站位符 T
真正的大师永远怀着一颗学徒的心。

浙公网安备 33010602011771号