一, 首先,static
1.static可以用来修饰成员变量和成员方法和代码块
用static 修饰的成员表示它属于这个类共有,而不是属于该类的单个实例。
static 修饰的字段 == 类字段
static 修饰的方法 == 类方法
没使用static修饰的成员和方法,成员属于类的单个实例,不属于类。
没有static 修饰的字段 == 实例字段
没有static 修饰的方法 == 实例方法
类和实例访问字段和方法的语法:
访问类成员: 类.字段 类.方法
访问实例成员: 实例.字段 实例.方法
2.static使用注意事项:
静态方法只能访问静态成员
但是非静态成员可以访问静态成员;
静态方法中不可以使用this,super关键字
3.static的特点:
随着类的加载而加载
优先于对象存在
被所有对象所共享
可以直接被类名调用
二,对于final
1.注意事项:
① final可以修饰类,方法,变量。
② final修饰类不可以被继承,但是可以继承其他类。
③ final修饰的方法不可以被覆写,但可以覆写父类方法。
④ final修饰的变量称为常量,这些变量只能赋值一次。
⑤ 内部类在局部时,只可以访问被final修饰的局部变量。
⑥ final修饰的引用类型变量,表示该变量的引用不能变,而不是该变量的值不能变;
三,对于abstract
1.abstract可以用来修饰类和方法
当一个类被abstract修饰时,这个类就是一个抽象类,抽象类中可以有抽象方法,也可以有具体实现方法,抽象类中存储的是子类中的共性方法,子类必须重写抽象类中所有的抽象方法,才能被使用,否则,该子类也是一个抽象类。
当一个方法被abstract修饰时,这个方法必须被子类重写才能使用。
2.abstract不能和static共同存在
abstract必须被覆盖重写才能使用,而static不能被覆盖
3.abstract不能和final共同存在
abstract必须被子类继承,final修饰的类不能被继承,为终结类。