黑马程序员学习笔记四——Java 面向对象 特点之 继承
2012-06-08 22:32
639 查看
---------------------- android培训、java培训、期待与您交流! ----------------------
在日常生活中我们可以这么理解,如:儿子继承父亲,子承父业。这种关系也叫继承。但是必须他俩之间有关系。不可能不认识的继承吧。
在java中为了提高代码的复用性,让类与类之间产生关系,有了关系才有多台。但是我们也不要为了获取其他类的功能,简化代码继承。必须是类与类之间有所属关系,才能继承所属关系。Java中只支持单继承,只支持单继承不支持多继承。这容易带来安全隐患。当多个父类定义相同功能时,但功能内容不同,子对象不确定要运行哪一个。就像儿子继承父亲 ,父亲可以有多个儿子,但是儿子不能有多个父亲。但是java中保留了这种机制,并用了另一种体现形式来表示实现。同时,java支持多重继承,也就是一个集成体系。
那么如何使用一个集成体系中的功能呢?想要使用体系,先查阅体系父类的描述,因为父类定义是该体系共性功能。一旦了解共性功能,就知道该体系基本功能了。就基本可以使用了。
具体调用就要穿件最子类对象。因为有可能父类不能创建对象(如抽象类)。同时创建子类对象也可以使用更多功能。包括基本的,也包括特有的。
下面举一个手机例子
首先画图
那么这个该如何编写呢?
首先定义手机类
1.Class 手机{
打电话,接电话,接发短信彩信。
}
2,供应商A
Class 供应商A extends(继承)手机{
Void 独有手机系统(){}
Void 独有的手机外观(){}
Void 支持wifi(){}
}
3 供应商B
Class 供应商B extends 手机{
Void 独有的手机系统(){}
Void 支持视屏通话(){}
}
3 供应商C
Class C extends 手机{
Void 独有的手机系统(){}
Void 音乐播放(){}
Void 高清摄像(){}
}
4 接下来就简单了 mian 函数调用一下,就可以查看给手机具体功能了。
结论 :
从上面例子可以看出继承一些特征:
1. 继承简化了对事物的认识和描述,能清晰体现相关类间的层次结构关系。
2. 继承提供了软件复用性。若类B继承类A,那么建立类B时只需要再描述与基类(类A)不同的少量特征(数据成员和成员方法)即可。这种做法能减小代码和数据的冗余度,大大增加程序的重用性。
3. 继承通过增强一致性来减少模块间的接口和界面,大大增加了程序的易维护性
---------------------- android培训、java培训、期待与您交流! ----------------------
详细请查看:http://edu.csdn.net/heima
在日常生活中我们可以这么理解,如:儿子继承父亲,子承父业。这种关系也叫继承。但是必须他俩之间有关系。不可能不认识的继承吧。
在java中为了提高代码的复用性,让类与类之间产生关系,有了关系才有多台。但是我们也不要为了获取其他类的功能,简化代码继承。必须是类与类之间有所属关系,才能继承所属关系。Java中只支持单继承,只支持单继承不支持多继承。这容易带来安全隐患。当多个父类定义相同功能时,但功能内容不同,子对象不确定要运行哪一个。就像儿子继承父亲 ,父亲可以有多个儿子,但是儿子不能有多个父亲。但是java中保留了这种机制,并用了另一种体现形式来表示实现。同时,java支持多重继承,也就是一个集成体系。
那么如何使用一个集成体系中的功能呢?想要使用体系,先查阅体系父类的描述,因为父类定义是该体系共性功能。一旦了解共性功能,就知道该体系基本功能了。就基本可以使用了。
具体调用就要穿件最子类对象。因为有可能父类不能创建对象(如抽象类)。同时创建子类对象也可以使用更多功能。包括基本的,也包括特有的。
下面举一个手机例子
首先画图
那么这个该如何编写呢?
首先定义手机类
1.Class 手机{
打电话,接电话,接发短信彩信。
}
2,供应商A
Class 供应商A extends(继承)手机{
Void 独有手机系统(){}
Void 独有的手机外观(){}
Void 支持wifi(){}
}
3 供应商B
Class 供应商B extends 手机{
Void 独有的手机系统(){}
Void 支持视屏通话(){}
}
3 供应商C
Class C extends 手机{
Void 独有的手机系统(){}
Void 音乐播放(){}
Void 高清摄像(){}
}
4 接下来就简单了 mian 函数调用一下,就可以查看给手机具体功能了。
结论 :
从上面例子可以看出继承一些特征:
1. 继承简化了对事物的认识和描述,能清晰体现相关类间的层次结构关系。
2. 继承提供了软件复用性。若类B继承类A,那么建立类B时只需要再描述与基类(类A)不同的少量特征(数据成员和成员方法)即可。这种做法能减小代码和数据的冗余度,大大增加程序的重用性。
3. 继承通过增强一致性来减少模块间的接口和界面,大大增加了程序的易维护性
---------------------- android培训、java培训、期待与您交流! ----------------------
详细请查看:http://edu.csdn.net/heima
相关文章推荐
- 黑马程序员---java学习笔记之面向对象:继承
- 黑马程序员java学习笔记——面向对象的特征封装、继承和多态
- 【黑马程序员】Java学习笔记之继承(一)(面向对象)
- 【黑马程序员】Java学习笔记之继承(二)(面向对象)
- 黑马程序员——java基础学习(面向对象,继承)
- 黑马程序员——JAVA学习笔记——面向对象(三大特性)
- 黑马程序员_JAVA笔记07——面向对象3(继承、final、抽象类、接口)
- C#学习笔记14:面向对象继承的特点和里氏转换
- 黑马程序员-java学习笔记-继承
- Java学习笔记11 面向对象之继承与…
- 黑马程序员--Java学习日记之面向对象(封装,继承和构造方法)
- 黑马程序员-自己总结的java学习笔记(5)继承,接口,多态。
- 黑马程序员-------面向对象的封装、继承、多态一些学习笔记
- 【黑马程序员】方法、数组、面向对象、封装、继承——Java复习笔记
- 黑马程序员--Java基础学习笔记【继承、多态】
- 黑马程序员—4—Java基础: 面向对象继承学习笔记和学习心得体会
- 0022 Java学习笔记-面向对象-继承、多态、组合
- 黑马程序员--Java基础学习笔记【二维数组、面向对象】
- 黑马程序员 java学习笔记——面向对象1:封装
- Java学习笔记二十一:Java面向对象的三大特性之继承