1.静态成员变量
1.1既可以用对象名来调用,也可以直接用类名来调用
Person.i = 10; //Person是一个类名。i是成员变量;
类名.成员变量= ;
静态变量的功用:被同类的所有实例变量共享的变量。
tip:静态变量会在该类的任何静态方法执行之前就初始化。
1.2他不是对象层次的变量,是类层次的变量,它是属于某个类的。
2.静态函数
2.1函数前面加static关键字,可以用类名直接调用;
2.2因为不能使用this,所以 静态函数不能引用非静态的变量。
tip:静态方法不能够调用非静态变量/方法。因为静态的方法是通过类的名称来调用,所以静态的方法无法引用到该类的任何实例变量。
静态方法调用没有对象。
3.静态代码块
他没名字。是在装载类的时候自己执行,为静态成员变量赋初始值,用得少。
适合放静态final变量的起始程序。
static{
代码…………
}
4.final
1.一个被标记为final的变量代表它一旦被初始化之后就不会在改动。
2.java中的常数被定义为public static final double PI = 3.14
常数的名称应该要都是大写字母。
3.final不只用在静态变量上,也可以用来修饰非静态的变量。
final的变量代表不能改变值
final的方法代表不能覆盖
final的类代表不能继承