static :static 修饰的Field(可以理解为成员变量)、方法属于类本身,没有static 修饰的则是属于类的实例。 static 修饰的静态成员不能直接访问非静态成员。
对于static修饰的方法而言,可以使用类来直接调用该方法,如果在static修饰的方法中,使用this ,则这个关键字无法指向合适的对象。
Java编程时不要使用对象去调用static修饰的Field和方法,而是应该使用类去调用Static修饰的Field和方法(这是允许的,但是尽量不要这样做)。
this :this关键字的最大作用就是让类中的一个方法访问该类里的另一个方法或Field。
super :用于限定该对象调用它从父类继承得到的Field或方法,super不能出现在static修饰的方法中
final :修饰变量时,表示该变量一旦获得了初始值就不可被改变。修饰的成员变量必须是由程序员显示地指定初始值,系统不会对final成员进行隐式初始化。如以下代码:
public class FinalErrorTest {
<span style="white-space:pre"> </span>final int age;
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>System.out.println(age); //age没有初始化编译错误,若将final去掉,系统会默认给age赋int类型初始值
<span style="white-space:pre"> </span>age = 6;
<span style="white-space:pre"> </span>System.out.println(age);
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>public static void main(String[] args) {
<span style="white-space:pre"> </span>new FinalErrorTest();
}
类Filed:必须在静态初始化块中或声明该Field时指定初始值;
实例Field必须在非静态初始化块声明该Field或构造器中指定初始值;