java——继承

  • 比如说我们在项目中需要定义这两个类,发现Person类中属性和方法在Student类中都有,这时通过继承,可以让Student类用写Person中定义过的方法和属性。
  • 其中涉及到两个知识点:1. UML类图   2. Date类型的变量
  • Student类为子类,Person类为父类,子类继承父类中定义过的所有属性和方法

java——继承java——继承java——继承

 

 

 

  • 继承的代码实现:
  • 继承的关键字用的是“extends”,即子类不是父类的子集,而是对父类的“扩展”

java——继承

 

 

 

  • 继承的另一种理解
  • 比如我们定义下面Customer、Student、Waiter、Teacher类的时候,都用到了相同的属性和方法,那么我们就可以把这些相同的属性方法提取出来,定义到Person父类中,通过继承来简化子类们的定义

java——继承

 

 

 

  • 父类中定义的private的属性在子类中也会被继承,但是在使用时还是要满足封装性的条件。
  • 比如:一般来说,在父类中定义了一个 private int age,则在父类的方法中会定义两个方法: public void setage(int age){} 和  public int getage(){return this.age} 。

java——继承java——继承java——继承

 

 

 

  • 一个父类可以有多个子类,但是一个子类不能有多个父类
  • 子类的父类也可以有父类,多层继承。分别叫直接父类和间接父类,子类可以获得直接父类和所有间接父类的所有属性和方法

java——继承

 

 

所有java类都直接或间接继承自带的object类,即即使你没定义一些方法和属性,但是object类中有,你就可以引用该方法和属性