继承的写法

public class Person {
    private int age;
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public void eat(){
        System.out.println("吃饭");
    }
    public void sleep(){
        System.out.println("睡觉");
    }
}

public class Student extends Person { // 子类Student继承父类Person
    private int sno;
    public int getSno() {
        return sno;
    }
    public void setSno(int sno) {
        this.sno = sno;
    }
    public void study(){
        System.out.println("学生可以学习");
    }
}
public class Test {
    public static void main(String[] args) {
        Student s = new Student();
        s.setSno(1001);
        s.setAge(18);
        System.out.println("学生的年纪:"+s.getAge());
        s.study();
        s.eat();
        s.sleep();
    }
}

可以看到父类定义的内容,子类可以直接拿过来用,不用在代码上反复重复定义了。父类中 private 修饰的内容,子类实际上也继承,只是因为封装的特性阻碍了直接调用,但是提供了间接调用的方式,可以间接调用。

P.S. 可以利用IDEA快捷键 alt + insert 生成 settergetter 方法

继承的注意事项

  • 父类中 private 修饰的内容,子类也继承过来
  • 一个父类可以有多个子类
  • 一个子类只能有一个直接父类,但是可以间接继承其它类
  • 继承具有传递性:例如 Student 类直接继承自 Person 类,而 Person 类又直接继承自 Object ,则 Student 类间接继承 Object
  • Object 类是所有类的根基父类,所有的类都直接或者间接地继承自 Object