您的位置:首页 > 编程语言 > Java开发

java - static - final

2013-08-19 18:30 162 查看

static关键字

修饰属性:静态成员变量
修饰方法:静态方法

静态成员变量:无论一个类生成了多少个对象,静态成员变量只有一份,
一个对象对静态成员变量进行修改,其他对象对该静态成员变量的值也变化
静态成员方法:静态方法只能继承不能重写,子类是把父类的静态方法隐藏了

静态成员:
是属于类的,不属于任何对象
因为静态成员是属于类的,所以当类加载完成之后就可以访问了
静态成员不能使用this来调用

final关键字

修饰类:终态类
修饰属性:终态属性(常量)
修饰方法:终态方法

终态类:不能被继承
终态属性(常量):
如果基本类型是值不能改变,如果引用类型是指向那一个对象不能改变
例如我们可以修改对象里面的成员变量
终态方法:不能被重写

终态属性系统不会默认值,而要求构造器完成之前必须初始化
可选时机一,声明时初始化
可选时机二,非静态语句块中初始化
可选时机三,构造器中进行初始化
终态局部变量初始化值的时间只要在使用值之前就行

静态终态成员变量

初始化要求必须在静态语句块结束之前完成
初始化时机
可选时机一,声明时初始化
可选时机二,静态语句块中初始化

static代码块

静态代码块先于构造方法执行的
因为定义一个类之后,类会生成一个class文件放在硬盘上,
再先将class文件从硬盘加载到JVM上,再使用JVM处理它再生成对象
静态代码块是类加载的时候执行
构造方法是生成对象的时候执行
不管类生成多少对象静态代码块只执行一次
先执行父类静态代码块再执行子类静态代码块
静态代码块作用完成一些初始化工作
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: