java面向对对象之继承

92 阅读1分钟

image.png

image.png

image.png 继承:是为了防止代码冗余,子类可以继承父类,通过关键字extends.子类只能继承父类的非私有属性和方法.

如图中Father中的house,car这些共有属性以及work等共有方法,子类Son是可以继承的,而父类中的一些用了private修饰的属性和方法Son类就不可以继承.

关于子类新增的东西.像work方法,Son类里面有,Father类里面也有.这里其实Son类里面已经重写了,所有如果在实例化一个Son类之后,具体对象调用的work方法会直接调用Son类里面的,而不是Father里面的,如果Son类里面找不到,才会去Fahter类里面找.

关于super使用:

  1. 子类可以通过super访问父类的属性和方法.

image.png 2. 实现父类的构造方法.

image.png

image.png 如果一个子类在实例化的时候无参便会实现子类的无参构造,有参便会实现有参构造;但是都会优先调用父类中的构造方法,也就是会默认有一个super()方法.如果在super中填写了参数就会调用父类的有参构造,如果没有参数就会调用父类的无参构造方法.