fianl和static关键字

来源:互联网 发布:运城达内java 编辑:程序博客网 时间:2024/04/28 23:14

Java关键字final 、static总结

一、 final

final类不能被继承,没有子类,final类中的方法,默认是final。

final方法不能被子类的方法覆盖,但是可以被覆盖。

final成员变量表示常量,只能被赋值一次,赋值之后不能再改变。

final不能用于修饰构造方法。


注意:父类的private成员方法是不能被子类方法覆盖的,因此private类型的方法默认是final类型。



二、 static

用public修饰的static成员变量和成员方法本质是全局变量和全局方法,当声明他类的对象时,不生成static变量的副本,而是类的所有势力共享一个static变量。


static变量前可以是private修饰,表示这个变量可以在类的静态代码块中,或者类的其他静态成员方法中使用(当然也可在非静态方法中使用)。

但是不能再其他类中通过类名直接引用。实际需要明白,private是访问权限限定,static表示不要实例化就可以使用。

1.static变量,类成员变量可分为,一种是被static修饰的变量,叫做静态变量或类变量;另一种是没有被static修饰实例变量。

2.static方法,可以直接通过类名调用,任何的实例也都可以调用。因此,静态方法中不能用this和super关键字

3.static代码块,也叫做静态代码块,是在类中独立于成员的static语句块,它不在任何的方法体内,jvm加载类时会执行这些代码块,如果static代码块有多个,jvm会按照它们在类中出现的先后顺序依次执行它们,每个代码块只会被执行一次。

0 0
原创粉丝点击