在刚学习java的时候,有时候被它的关键字搞的焦头烂额,因为相同的关键字,作用在不同的对象效果是不一样的,以下是我对于java常用到的关键字进行的总结。
final关键字
1、修饰class(类):表示此类不可以被继承。
2、修饰method(方法):表示该方法不可以被重写(@override)
3、修饰variable(变量):表示这是一个常量,不可以被改变
static关键字
1、修饰class:不常用,static不允许修饰普通类
2、修饰method:表示属于所在对象,不需要进行对象实例化可以引用该方法。例如:常用的一个数学方法就是Math.random(),就是调用Math类中的静态方法random()方法。
*注:静态方法不可以调用非静态变量,需要先将对象实例化才能调用
3、修饰variable:跟静态方法的使用一样,但是如果改变静态变量的值,在其他地方的引用也会被改变。
super关键字
1、修饰class:super(),调用父类的构造方法。
2、修饰method:如果一个方法在子类当中被重写的话,需要调用父类的方法就可以使用super.method()。
3、修饰variable:super.variable,调用父类的变量。
this关键字(相对于super关键字)
1、修饰class:调用此类的构造方法
2、修饰method:调用内部的一个方法
3、修饰variable:调用本类的变量
*注:静态方法中不可以使用super和this关键字
至于public、protected、private关键字大家都知道的,只要注意两点就可以了:
1、private、protected是不可以修饰class的
2、类内部创建的实力化对象是可以使用private、protected修饰的变量和方法的