定义具体的例子:
传递性 继承总结:Super
定义具体的例子:很多类都共有的属性和行为,可以放在另外一个类(超类或者叫父类)并继承里面的属性和行为,抽出共有属性和行为的过程叫泛化(设计层面)
子类/派生类里面放自己特有的属性和行为
表现方式: 在方法名后面加extends 加 继承的父类名
我们可以写一堆类:
- 老师:名字 年龄 身高 地址 工资学生: 名字 年龄 身高 地址 学习医生: 名字 年龄 身高 地址 补牙
以上三个类都共有年龄, 身高,名字和地址
所以下面代码,把他放在外面的一个person类
//定义类
class Person{
int age;
String name;
}
class Student extends Person{
int study;
}
class doctor extends Person{
int toothFilling;
}
public static void main(String[] args) {
Student Kobe = new Student();
System.out.println(Kobe.age);
}
传递性
爷爷的属性能传递给儿子
class grandfather{//仅可以调用变量a,不可以调用b和c
int a;
}
class Dad{//可以调用变量a和b,不可以调用c
int b;
}
class Grandson{//可以调用变量a,b和c
int c;
}
继承总结:
作用:代码复用通过extends来实现继承超类/父类:共有的属性和行为派生类/子类:特有的属性和行为一个超类可以有多个子类或者派生类一个派生类只能有一个超类-----------单一继承派生类可以访问超类,父类不可以访问子类具有传递性 Super
super(一般不用):只带当前对象的超类对象,用法是super.成员变量。
super()调用超类的构造方法java规定:构造派生类之前必须先构造超类先调超类的无参构造方法
public class SuperDemo {
public static void main(String[] args) {
Boo b=new Boo();
}
}
class Aoo{
Aoo(){
System.out.println("Aoo");
}
}
class Boo extends Aoo{
Boo(){
super();//可以写也可以不写,它是自动调,必须在第一行,先调超类,再调派生类
System.out.println("Boo");
}
}
一个派生类中的默认代码
类名(){//不写构造方法,系统自己生成一个无参的超类构造方法
super()//系统自动生成
}



