继承
(1)继承的概述
- 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可;
- 通过extends关键字可以实现类与类的继承;
- 格式: class 子类名 extends 父类名{}
- 单独的这个类称为父类,基类或者超类;这多个类称为子类或者派生类;
- Java只支持单继承,不支持多继承。有些语言(c++)是支持多继承,格式:extends 类1,类2,…
class Father{
}
class Mother{
}
class Son extends Father{
}
class Son extends Mother{
}
- Java支持多层继承(继承体系);
class GrandFather {
public void show() {
System.out.println("我是爷爷");
}
}
class Father extends GrandFather {
public void method(){
System.out.println("我是爸爸");
}
}
class Son extends Father {
}//多层继承
class ExtendsDemo1{
public static void main(String[] args) {
Son s = new Son();
s.method(); //使用爸爸的
s.show(); //使用爷爷的
}
}
- 子类只能继承父类所有非私有的成员(成员变量和成员方法);
class Father {
private int num = 10;
public int num2 = 20;
private void method() {
//私有方法,子类不能继承
System.out.println(num);
System.out.println(num2);
}
public void show() {
System.out.println(num);
System.out.println(num2);
}
}
class Son