JAVA中继承(extends)、super关键字、final关键字

继承(extends):

概述:
多个类中相同的属性与行为,将这些相同的属性和行为单独的抽取出来放在一个类中,那么多个类将无需在定义这些属性和行为,只需继承那个类就行。
格式:
class 子类名 extends 父类名{}
继承通过extends关键字实现类与类的继承
单独的类称为父类、基类、超类。多个类称为子类或者派生类。
优点:

  1. 提高了代码的复用性
  2. 提高了代码的可维护性
  3. 让类与类之间产生了关系,是多态的前提

缺点:
增强了类的耦合性
注:开发的原则:高内聚,低耦合。

特点:

  1. java中只支持单继承,不支持多继承
  2. java中支持多层继承(继承体系)

注意事项:

  1. 子类只能继承父类的所有非私有成员。(成员方法和成员变量)
  2. 子类不能继承父类的构造方法。但可以通过super关键字去访问父类的构造方法。
  3. 不要为了部分的功能而去继承。

继承中的构造方法的关系:
子类中的所有构造方法都会默认访问父的空参数构造方法
父类中没有无参构造方法,子类应怎么办?

  1. 在父类中添加一个无参构造方法
  2. 子类通过super去显示调用父类的其他带参构造方法
  3. 子类通过this去调用本类得构造方法
super关键字:

子类局部范围访问父类成员变量。

this与super的区别:
this 代表的是本类对象的引用
super 代表的是父类储存空间的标识

final关键字:

final 可以修饰类、变量、成员方法。

final修饰符的特点:

  1. 修饰类 被修饰的类不能被继承
  2. 修饰变量 被修饰的变量不能被重新赋值,因为这是一个常量
  3. 修饰成员方法 被修饰的成员方法不能被重写

猜你喜欢

转载自blog.csdn.net/weixin_42093672/article/details/102555229