Java的super关键字、访问权限修饰符以及final关键字的三种用法

一、super关键字
1.super是直接父类对象的引用。可以通过super来访问父类中被子类覆盖的方法或属性。
2.若是构造方法的第一行代码没有显示的调用super或者this(...);那么Java默认都会调用super();含义是调用父类无参数构造方法、这里的super可以省略

二、构造方法调用顺序
构造方法的第一句总是:super(...)来调用父类对应的构造方法。所以,流程就是:先向上追溯到Object,然后再依次向下执行类的初始化块和构造方法,知道当前子类为止。
静态初始化块的调用顺序与构造方法调用顺序相同。

三、访问权限修饰符

修饰符 同一个类中 同一个包中 不同包中继承的子类 所有类
private *      
default * *    
protected * * *  
public * * * *

1.private表示私有,只有自己类能访问。
2.default表示没有修饰符修饰,只有同一个包的类能访问
3.protected表示可以被同一个包的类以及其他包中的子类访问
4.public表示可以被所有包中的所有类访问

四、final关键字的作用:
1.修饰变量:被修饰的变量不可改变,一旦赋了初值,就不能被重新赋值

final int MAX_SPEED = 120;

2.修饰方法:该方法不可被子类重写,但是可以被重载!

final void study(){}

3.修饰类:修饰的类不能被继承,如Math、String等

final class A{}

 

你可能感兴趣的:(Java)