java学习10-面向对象(继承)
2013-11-24 19:51
253 查看
继承特点:
1,java中只能单继承,多继承的机制被java语言改良了。单继承:一个类只能有一个父类。一个儿子只能有一个父亲。
多继承:一个类可以有多个父类。一个儿子有多个父亲。(早期C++支持多继承)
2,Java不支持多继承,原因:调用方法时会产生调用的二义性
使用继承场景
必须是食物之间存在所属关系时,才定义继承。
所属关系:x是y中的一种。
误区:不要仅仅为了提高复用,为了方便获取其他类中的类容而去继承。
(1) 继承了无用的方法
(2) 增强了耦合度
继承的特点:
例子:
package com.dragon.src; /** * 继承中的特点: * 成员变量 * 成员方法 * 构造方法 * @author DRAGON * */ public classA { private int num = 5; //添加getter和setter public int getNum() { return num; } public void setNum(int num) { this.num = num; } }
package com.dragon.src; /** * this代表本类对象的引用 * super代表父类所属的空间 * 子类通常不会出现同名的属性,子类没必要再定义父类相同的属性 * @author DRAGON * */ public classB extendsA{ private int num = 7; //添加getter和setter public int getNum() { return num; } public void setNum(int num) { this.num = num; } public void show() { System.out.println(this.num);//this代表本类对象的引用 System.out.println(super.getNum());//super代表父类所属的空间 } }
package com.dragon.src; public classExt { /** * @param args */ public static void main(String[] args) { Bb = newB(); b.show(); } }
运行结果:
7
5
相关文章推荐
- java学习之旅37--面向对象_10_this隐式参数_内存分析
- Java学习之面向对象(方法的重写 overwrite,super的使用,继承中的构造方法)
- JAVA学习--面向对象的特征二:继承…
- 黑马程序员——java基础学习(面向对象,继承)
- Java学习第六课--面向对象的三大特性(封装、继承和多态)
- 黑马程序员--Java学习日记之面向对象(封装,继承和构造方法)
- JAVA学习(10) 继承(3) 继承中的构造函数
- Java学习笔记11 面向对象之继承与…
- 黑马程序员学习笔记四——Java 面向对象 特点之 继承
- JAVA学习(10) 继承(2) 继承中的方法的覆盖和重载
- 【java学习】面向对象三大特性:封装,继承,多态
- Java学习笔记二十一:Java面向对象的三大特性之继承
- Java学习之旅基础知识篇:面向对象之封装、继承及多态
- 【Java学习笔记】10.继承、抽象类、接口
- java学习路线__面向对象__继承的定义与使用__9
- 黑马程序员--Java学习日记之面向对象(封装,this和static,继承)
- 黑马程序员---java学习笔记之面向对象:继承
- 【Java学习笔记】基础知识学习10【继承与多态】
- JAVA学习(10) 继承(4) 抽象类和抽象方法
- java学习之旅40--面向对象_13_继承_Object类用法_toString和equals方法_重写toString