码迷,mamicode.com
首页 > 其他好文 > 详细

面向对象理解随笔

时间:2015-09-26 01:42:27      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:

结构和类是并列的,都是创建对象的模板

修饰符 Struct 结构名

 1、结构是值类型,类是引用类型

2、结构不能包含显式的的无参数构造函数,结构成员会自动初始化默认值,不能再声明时赋值初始化

3、不能有基类(不能Base) 不支持继承

4、声明了结构类型后,可以使用New 运算符创建构造对象,也可以不使用new。如果不适用New,那么在初始化所有字段之前,字段将保持未赋值状态且对象不可用

面向对象的四个特性:

封装:不会破坏原有数据,相当于把数据提取出来在相应的类中进行处理执行

继承:   通过:实现

抽象:  ?

多态:通过虚拟重写方法实现   注:基类中未虚拟(virtual)的话 ,新类中相当于是隐藏了而override 用了就只有一个方法this.Fun();
重新new一个同名方法 还是有两个方法可以用;一个是Base.Fun();一个是this.Fun();

 

 

关于接口

1、可以由方法、属性、事件、索引器 的任何组合构成,不能包含 常数(const) 、字段、运算符、实例构造函数、析构函数、类型

也不能包含任何种类的静态成员。接口成员一定是公开的

2、C#中不支持直接进行多重继承,但是可以通过接口实现多重继承,接口之间也可以进行继承,普通类和抽象类可以继承自接口。一个类可以同时继承一个类和多个接口,但是接口不能继承类

 

 

关于抽象

1、用于描述共性,不考虑具体的实现,只确定必须具有的行为(即确定抽象方法)

2、包含抽象方法的类就是抽象类

在派生类中实现基类的抽象方法,是使用override来重写基类方法

 

 

关于接口、类、和抽象

抽象类是一个不完全的类,需要通过派生类来完善

接口只是对类的约束,仅仅承诺了类能够调用的方法

一个类一次可以实现若干个接口,但一个类只能继承一个基类

抽象类只需派生类实现它的抽象方法,接口要求必须实现它的所有成员

实际编程中,接口的使用要比抽象类广泛的多

 

关于密封类

不能当作基类的类,从而保证了密封类的密封性和安全性(sealed实现)  实际使用非常少,单纯为了保证安全性

 

面向对象理解随笔

标签:

原文地址:http://www.cnblogs.com/ck235/p/4839857.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!