Java day4【第十二章】继承定义及使用
十二.继承定义及使用:
二.继承实现:
(1)继承:
class 子类 extends 父类 {}
子类又称派生类,父类又称超类(super class)
eg: 观察继承
class Students extends Person{
}
继承实现的目的:扩充已有的功能
(2)内存关系:

三.子类对象实例化流程:
(1)对实例化定义有要求:
先实例化好父类,然后子类实例化。
不做代码解释。
(2)结论:无论如何折腾,在实例化子类对象的同时一定会实例化父类对象,目的是给所有类分配内存空间。
super和this都可以调用构造方法的参数,super调用父类参数,this调用本类参数。
四.继承定义限制:
(1)java之中不允许多重继承,只允许多层继承。
很好理解,一个人只能由一个爹。
eg:错误继承
class A {}
class B {}
class C extends A,B {}
继承的目的:扩展已有的功能
多重继承的目的:扩展继承多个类中的方法
而面对于多继承的要求,必须将范围限定在同一类中。
正确继承如下:
class A{}
class B extends A{}
class C extends B{}
但多层继承也有限度,千万别祖宗二十代,对于继承,理论上层次不应该超过三层。
(2)子类可继承父类中的所有操作结构,但是对于私有操作属于隐式继承(见不得人的好事),非私有继承是显示继承(亿万家产)
class Person
{
private String name;
public void setName(String name){
this.name = name ;
}
public String getName(){
return this.name;
}
}
class Student extends Person
{
public void fun(){
//System.out.println(name); 直接引用不可取
System.out.println(getname()); //间接引用
}
}
public class Stringdemo{
public static void main(String args[]) {
}
}
继承一旦发生,所有操作都可以被子类使用,子类最少会维持父类的现有功能(java不考虑败家子的情况)
浙公网安备 33010602011771号