十一.面向对象的术语 1. 类
/ k6 \! D- z# o6 ~ 类作为设计蓝图来创建对象的代码段,它描述了对象的特征;该对象具有什么样的属性,怎样使用对象完成一些任务,他对事件进行怎样的响应等!
9 D4 B: K1 m3 \6 \( q" L$ J+ X 2. 对象
3 u$ Y% Q3 C1 t( h$ B$ Z 对象是类的一个实例,通常通过调用类的一个构造函数来创建它!
$ Z& r! T% k2 z" Q: O" \0 t 3. 方法$ Y, o& S# {- P9 r
方法是在类中定义的函数,一般而言,一个方法描述了对象可以执行的一个操作!
0 H- s$ S% S) U M7 X x$ M 4. 属性4 S7 D0 m+ K. ^% ]0 b
属性是类中定义的变量,类的属性突出刻画了对象的性质或状态。某些情况下,对象的使用者可能不允许改变对象的某些属性,这是因为类的创建者已经规定了那些属性不能被使用者更改。这就比如你只能知道我是男生,但你没有办法改变!
" `3 T! k) D/ s1 c5 O8 E/ H 5.事件
: b Q2 W. _/ { VB是由事件触发!事件是由某个外部行为所引发的对象方法。他可与用户行为(例如单击某个Button)或系统行为相关联。
0 D8 _, t- g3 b9 S! Q( E 6.构造函数
* `0 P a' n! [2 t1 S% U 构造函数是创建对象所调用的特殊方法,在VB中,对象的创建是通过在给定的类中创建名为new的过程而实现的!9 C, Q( Z) {! g
7. 析构函数
+ O! i6 |7 `+ F |4 N 析构函数是释放对象时所调用的特殊方法,在VB中,为了编写析构函数,我们必须重写基类的Dispose方法。但是,由于CLR自动进行垃圾收集,因此在受管代码中很少需要显式得调用析构函数。然后,当运行CLR之外的资源(如设备,文件句柄,网络连接等)时,应调用Dispose方法确保计算机的性能!* X6 b. ~2 Q4 U2 ]3 `5 C
8. 继承
6 a( d1 ?, o9 E' r; | 继承是面向对象的一个概念,它规定一个类可以从其他的小类(基类)中派生,并且该派生类继承其基类的接口和相应代码!(该类称为派生类或子类)
, x& w9 e4 }; @& C: G 9. 重写4 y( s6 s6 k6 L; O8 Z
重写是面向对象的一个概念,它规定一个派生类可以创建其基类某个方法的不同实现代码。实际上,它完全重写了基类中该方法所执行的操作!( o, _! K) ?4 m% }3 v0 n
10. 接口
6 [$ y: j! d' K! b0 A# B( V 接口是一种约定,它定义了方法、属性、时间和索引器的结构。我们不能直接从一个接口创建对象,而必须首先通过创建一个类来实现接口所定义的特征!
6 W, \& H6 t, Z' x 11.封装
2 G. x& D W3 f3 P, p9 P4 W: [ 封装是一个概念,它的含义是把方法、属性、事件集中到一个统一的类中,并对使用者屏蔽其中的细节问题一个关于的封装的实例是小汽车——我们通过操作方向盘、刹车和加速来操作汽车。好的封装不需要我们考虑燃料的喷出、流动问题等。$ G( P, O5 q! `. U7 N( p! J; I
12. 重载( R9 s; Q7 X; H7 Z
他规定一个方法可以具有许多不同的接口,但方法的名称是相同的。
3 C4 c2 x7 X' P; ^8 c 13. 多态% J) Y5 _% @; f- E5 R3 k$ `
它规定,一个同样的函数对于不同的对象可以具有不同的实现。例如一个Add方法,它既可以执行整数的加法求和操作,也可以执行字符串的连接操作!‘ |