变量
本质:就是代表一个”可操作的存储空间”,空间位置是确定的,但是里面放置什么值不确定。我们可通过变量名来访问“对应的存储空间”,从而操纵这个“存储空间”存储的值。
Java变量是程序中最基本的存储单元。其要素包括变量名、变量类型和作用域。
变量分类:
局部变量在使用前必须先声明、初始化(赋初值)再使用。
类变量:使用static定义。从属于类,生命周期伴随类始终,从类加载到卸载。如果不自行初始化,与成员变量相同会自动初始化成该类型的默认初始值。
int String = 1; // 这是对的 引用类型可以当变量名 |
常量:
-
在Java语言中,主要是利用关键字final来定义一个常量。常量一旦被初始化后不能再更改其值。
-
只能被初始化一次
-
书写:常量一般大写字母和下划线:MAX_VALUE
final关键字的作用:
1. 修饰变量: 被他修饰的变量不可改变。一旦赋了初值,就不能被重新赋值。
2. 修饰方法:该方法不可被子类重写。但是可以被重载!
3. 修饰类: 修饰的类不能被继承。比如:Math、String等。
成员变量不一定要赋初始值。可以再外面声明,在构造方法中赋值,也不会错。
面试题:
使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变? 使用final关键字修饰一个变量时,是指引用变量不能变(作用在变量上),引用变量所指向的对象中的内容还是可以改变的。 例如,对于如下语句: finalStringBuffer a=newStringBuffer("immutable"); 执行如下语句将报告编译期错误: a=new StringBuffer(""); 但是,执行如下语句则可以通过编译: a.append("broken!"); |
final, finally, finalize的区别?
|
关注公众号,获取免费软件、资料,笔记等。