面向对象
主要以C#语言为例,来介绍面向对象的相关概念。相互学习!
yysx
努力就有收获自信才有未来
展开
-
面向对象——(10)委托与事件
委托是对函数的封装,可以当做给方法的特征制定一个名称。而事件则是委托的一种特殊形式,当发生有意义的事情时,事件对象处理通知过程。 委托是一种引用方法的类型。一旦为委托分配了方法,委托将与该方法具有完全相同的行为。委托对象用关键字delegate来声明。而事件是说在发生其他类或对象关注的事情时,类或对象可通过事件通知它们。事件对象用event关键字声明。原创 2014-03-19 16:46:15 · 1881 阅读 · 23 评论 -
面向对象——(9)封装和接口
封装:每个对象都包含它能进行操作所需要的所有信息,这个特性叫封装,因此对象不必依赖其他对象来完成自己的操作。 它有两重含义:第一,它把对象的属性和服务结合成一个独立的系统单位(即对象);第二,“信息隐蔽”,即尽可能隐蔽对象的内部细节,对外形成一个屏障或边界,只保留有限的对外接口使之与外部发生关系。 在面向对象的程序设计中,对象是一种自治、封装的实体。通过定义对象属性和行为的可见性,原创 2014-03-12 19:52:27 · 3654 阅读 · 21 评论 -
面向对象——(8)属性与修饰符
属性:属性是一个方法或一对方法,字段是存储类要满足其设计所需要的数据,字段是与类相关的变量。在调用属性的代码看,属性是一个字段,即属性适合于以字段的方式使用方法调用的场合。private string name="miao";其中,name就是一个字段,而’miao‘是属性。属性有两个方法get、set。get访问器返回与声明的属性相同的数据类型,表示的意思是调用时可以原创 2014-03-03 17:23:08 · 1566 阅读 · 14 评论 -
面向对象——(1)概述
先介绍几个重要的概念:1、面向对象(Object Oriented)2、对象(Object)是面向对象开发模式的基本成分。 每个对象可用它本身的一组属性和它可以执行的一组操作来定义。3、消息(Message)一个对象与另一个对象的通信单元,是要求某个对象执行类中定义的某个操作的规格说明 对象向对象发出的服务请求包含信息:提供服原创 2013-11-13 17:35:06 · 2069 阅读 · 20 评论 -
面向对象——(2)多态
1、多态的含义同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。2、多态的类型(1)编译时的多态性编译时的多态性是通过重载来实现的,对于非虚的成员来说,系统在编译时,根据传递的参数、返回的类型等信息决定实现何种操作。(2)运行时的多态性运行时的多态性就是指知道系统运行时,才根据实际情况决定实现何种操作。C#中运行时的多态性是通过覆写虚成员实现。原创 2014-01-23 19:36:36 · 2274 阅读 · 31 评论 -
面向对象——(3)构造函数与析构函数
构造函数负责完成程序中的初始化工作,而构造函数负责完成程序中的清理工作。 如果用户没有定义构造函数和析构函数,会自动生成一个默认的构造函数和析构函数。1、构造函数构造函数(constructor)是与类名相同 的,在建立对象时自动调用的函数,专门用于对象初始化的函数。在需要为对象数据成员动态分配内存时,构造函数总与new运算符一起使用在创建对象的语句中。原创 2014-02-12 11:07:30 · 2648 阅读 · 21 评论 -
面向对象——(4)静态方法
静态方法 若类的方法前加了static关键字,则该方法称为静态方法,反之为实例方法。 静态方法为类所有,可以通过对象来使用,也可以通过类来使用。但一般提倡通过类名来使用,因为静态方法只要定义了类,不必建立类的实例就可使用。 静态方法只能用类的静态成员。原创 2014-02-12 17:42:21 · 2043 阅读 · 21 评论 -
面向对象——(5)方法重载
是重载和方法重载在一个类定义中,可以编写几个同名的方法,但是只要它们的签名参数列表不同,就会将它们看做唯一的方法。简单的说,一个类中的方法与另一个方法同名,但是参数表不同,这种方法称之为重载方法。方法重载(overloading method)提供了创建同名的多个方法的能力,但这些方法需使用不同 的参数类型。小结:方法重载就是方法名称重复,加载参数不同。原创 2014-02-16 11:17:15 · 2128 阅读 · 18 评论 -
面向对象——(6)继承
对象的继承代表了一种“is-a”的关系,如果两个对象A和B,可以描述为“B是A”,则表明B继承A。比如:苹果是水果,即苹果继承水果。实际上,继承者还可以理解为是对被继承者的特殊化,因为它除了具备被继承者的特性外,还具备自己独特的个性。就像苹果,除了具有水果的一般特性外,它还有多种维生素、矿物质、糖类、脂肪等,构成大脑所必须的营养成分。继承定义了类如何相互关联、共享特性。继承的工作方式是,定义父原创 2014-02-18 15:45:52 · 1560 阅读 · 19 评论 -
面向对象——(7)抽象类
抽象类通常代表一个抽象概念,它提供了一个继承的出发点,当设计一个新的抽象类时,一定是用来继承的,所以,在一个以继承关系形成的等级结构里面,树叶节点应当是具体类,而树枝节点均应当是抽象类。注意:1、抽象类不能实例化2、抽象方法必须被子类重写的方法,不重写的话,它就没有存在的意义了。3、如果类中包含抽象方法,那么类就必须定义为抽象类,不论是否还包含其他一般方法。原创 2014-02-25 17:39:55 · 1457 阅读 · 19 评论