面向对象-继承extends
2016-06-23 本文已影响0人
若波特
继承
- 提高了代码的复用性
- 让类与类之间产生了关系,有了这层关系,才有了多态的特征
注意
- 千万不要为了获取其他类的功能,简化代码而继承
- 必须是类与类之间有所属关系才可以继承,所属关系
is a
- JAVA语言中,只支持
单继承
和多层继承
,不支持多继承
;但JAVA保留了这种机制,并用另一种提现形式多实现
来完成
因为多继承容易带来安全隐患,当多个父类中定义了同样的功能,子类不知道该运行哪一个父类中的功能
class Person {
String name;
int age;
}//name和age是student和worker共有的描述,所以可以提取为父类
class Student extends Person{
void study(){
System.out.println(name+";"+age+";"+"good study");
}
}//student继承了父类person后,可以定义自己的name和age
class Worker extends Person{
void work(){
System.out.println(name+";"+age+";"+"good work");
}
}
class Show{
public static void main(String[] args){
Student s = new Student();
s.name = "wuwu";
s.age = 18;
s.study();
Worker w = new Worker();
w.name = "zhzh";
w.age = 28;
w.work();
}
}
输出结果:
wuwu;18;good study
zhzh;28;good work
如何使用一个继承体系中的功能呢?
- 想要使用继承体系,先查阅体系中父类的描述,因为父类中定义的是该体系中的共性功能
- 通过了解共性功能,就会知道该体系的基本功能
在具体调用时,为什么要创建最子类的对象?
- 因为有可能父类不能创建对象
- 创建子类对象可以使用更多的功能,既包括基本的也包括特有的
概述:查阅父类功能,创建子类对象使用功能