关于面向对象的一些名词解释
2010-03-03 20:55
791 查看
对象:对象是一个自包含的实体,用一组可识别的特性和行为来标识。
面向对象编程:英文即 object-oriented pragramming 即针对对象来进行编程。
类:具有相同的属性和行为的对象的一个抽象的集合。
实例化:实例化即时对象创建的过程。
字段:字段是满足类设计所需的数据。
属性:是一个方法或一对方法,它适用于以字段方式,使用方法调用的场合。它有两个方法,get和set,get是在调用的时候可以得到类内部的字段或者值的引用。set方法有一个隐式的参数value,可以修改类的成员变量。
面向对象的三大特性:继承,多态,封装。
封装:每个对象都包含其进行操作的所有的信息,不需要依赖其他的对象来完成自己的任务。封装的好处:1、类之间的耦合度大大降低,可复用加强,2、类内部的实现可以任意的修改,无需担心对整个工程造成影响。3、类对外有清晰的接口。
继承:is-a的关系。通俗的讲B是A那么B就继承于A。如果子类继承了父类那么:1、子类拥有父类所有非private属性和功能,2、子类拥有自己的属性和功能。3、子类可以以自己的方式对父类的函数进行重写。当然子类并不继承父类的构造函数,必须显示的调用,利用base关键字。
多态:表示不同的对象可以执行相同的代码,但是执行的效果不同。父类的一个虚拟的方法,然后子类重写其方法即可。
抽象类:在c++中virtual 返回值 函数名() = 0
即可定义一个抽象类,而在c#中,需要加abstract关键字定义抽象类。抽象类注意的几点:1、抽象类不能被实例化。2、继承的子类必须重写抽象类的抽象方法。
接口:接口和抽象类有很大的相同点。它是把一些方法和属性封装成一个特定的集合。在接口中不允许提供任何方法的实现。interface关键字来定义接口。对于接口前面最好加一个I,这是一个规范,因为这样大家就知道你写的是一个接口,不是其他的东西。
关于抽象类和接口的一些区别:
1、抽象类可以给出一些方法的实现,但是接口不能给出任何方法的实现。
2、子类可以实现不封抽象类的方法,但是 接口的成员函数需要实现类必须全部实现。
3、一个类只能继承一个抽象类,但是可以继承多个接口。
4、类是对对象的抽象,抽象类是对类的抽象,而接口是对方法的抽象。
5、行为如果跨越不同的类的对象,那么最好是用接口,如果一些相似的类的对象,则可以用抽象类。
面向对象编程:英文即 object-oriented pragramming 即针对对象来进行编程。
类:具有相同的属性和行为的对象的一个抽象的集合。
实例化:实例化即时对象创建的过程。
字段:字段是满足类设计所需的数据。
属性:是一个方法或一对方法,它适用于以字段方式,使用方法调用的场合。它有两个方法,get和set,get是在调用的时候可以得到类内部的字段或者值的引用。set方法有一个隐式的参数value,可以修改类的成员变量。
面向对象的三大特性:继承,多态,封装。
封装:每个对象都包含其进行操作的所有的信息,不需要依赖其他的对象来完成自己的任务。封装的好处:1、类之间的耦合度大大降低,可复用加强,2、类内部的实现可以任意的修改,无需担心对整个工程造成影响。3、类对外有清晰的接口。
继承:is-a的关系。通俗的讲B是A那么B就继承于A。如果子类继承了父类那么:1、子类拥有父类所有非private属性和功能,2、子类拥有自己的属性和功能。3、子类可以以自己的方式对父类的函数进行重写。当然子类并不继承父类的构造函数,必须显示的调用,利用base关键字。
多态:表示不同的对象可以执行相同的代码,但是执行的效果不同。父类的一个虚拟的方法,然后子类重写其方法即可。
抽象类:在c++中virtual 返回值 函数名() = 0
即可定义一个抽象类,而在c#中,需要加abstract关键字定义抽象类。抽象类注意的几点:1、抽象类不能被实例化。2、继承的子类必须重写抽象类的抽象方法。
接口:接口和抽象类有很大的相同点。它是把一些方法和属性封装成一个特定的集合。在接口中不允许提供任何方法的实现。interface关键字来定义接口。对于接口前面最好加一个I,这是一个规范,因为这样大家就知道你写的是一个接口,不是其他的东西。
关于抽象类和接口的一些区别:
1、抽象类可以给出一些方法的实现,但是接口不能给出任何方法的实现。
2、子类可以实现不封抽象类的方法,但是 接口的成员函数需要实现类必须全部实现。
3、一个类只能继承一个抽象类,但是可以继承多个接口。
4、类是对对象的抽象,抽象类是对类的抽象,而接口是对方法的抽象。
5、行为如果跨越不同的类的对象,那么最好是用接口,如果一些相似的类的对象,则可以用抽象类。
相关文章推荐
- 关于移动开发的一些名词解释
- 关于图论的一些名词解释
- [转载]关于Clusters的一些相关知识和名词解释
- 关于投资的一些名词解释—股票,债券,基金,一级市场,二级市场
- 03-关于配置Linux下的DNS中一些名词的解释(转自网络)
- 一些名词解释 关于iOS编程的“国际化与本地化”
- 关于一些数据库名词的解释
- 【人脸识别】关于识别识别的一些名词解释以及函数说明
- 【系统运维】关于一些常见易混淆易忘记的操作系统术语解释。
- 本周笔记整理(关于php面向对象的一些基层知识点)
- 关于计算机的一些名词或是概念
- 分布式系统中的一些名词解释
- 关于Apache Shiro权限框架的一些使用误区的解释
- 一些名词的解释
- Zigbee的一些名词解释
- 关于BFC不会被浮动元素遮盖的一些解释
- 关于grub中各个名词的解释
- 关于在线游戏行业术语的名词解释
- C99标准学习笔记(1)——一些名词解释
- EPR和SAP的一些名词解释