在程序执行过程中,其值不能被改变的量被成为常量,其值能被改变的量被称为变量。变量和常量的命名都必须使用合法的标识符。
1 标识符
Java 中标识符是为方法、变量或者其他用户定义项定义的名称。标识符用来对变量、常量、类和方法等进行命名。标识符是严格区分大小写的。
标识符命名规则:
- 标识符由数字(0~9)、美元符号($)、下划线(_)以及Unicode字符集组合构成;
- 标识符各符号之间没有空格;
- 标识符第一个字符不能为数字.
- 标识符不能为关键字和保留字;
- 标识符的命名最好能反映其作用。
注:在Java中,是区分大小写的,标识符也包括关键字。
2 关键字
Java 的关键字对 Java 编译器有特殊的意义,它们用来表示一种数据类型,或者表示程序的结构等。java的关键字都是小写的!!
1)48个关键字:abstract、assert、boolean、break、byte、case、catch、char、class、continue、default、do、double、else、enum、extends、final、finally、float、for、if、implements、import、int、interface、instanceof、long、native、new、package、private、protected、public、return、short、static、strictfp、super、switch、synchronized、this、throw、throws、transient、try、void、volatile、while。
2)2个保留字(现在没用以后可能用到作为关键字):goto、const。
3)3个特殊直接量:true、false、null。
3 Java变量
变量就是指代在内存中开辟的存储空间,用于存放运算过程中需要用到的数据。
变量的声明:变量必须先声明后使用,相同的变量只能声明一次。
格式:变量类型 变量名 = 变量值,如
int age; //声明int型变量
char char1 = r" // 声明char型变量并赋值
变量的命名:命名规则:
- 满足标识符的命名规则;
- 符合驼峰法命名规范;
- 尽量简单,做到见名知意;
- 变量名的长度没有限制,但尽量做到第三条;
变量的访问:对变量的操作即为对其所存储的数据的操作
在Java中,声明变量必须先指定好变量的数据类型,之后变量只能存储该类型的数据。
变量在声明时指定了它的数据类型, Java编译器会检测对该变量的操作是否与其类型匹配,如果对变量的赋值或者操作与其类型不匹配,会产生编译错误。
如下所示:
使用 final 关键字声明类、变量和方法需要注意以下几点:
- final 用在变量的前面表示变量的值不可以改变,此时该变量可以被称为常量。
- final 用在方法的前面表示方法不可以被重写(子类中如果创建了一个与父类中相同名称、相同返回值类型、相同参数列表的方法,只是方法体中的实现不同,以实现不同于父类的功能,这种方式被称为方法重写,又称为方法覆盖。这里了解即可,教程后面我们会详细讲解)。
- final 用在类的前面表示该类不能有子类,即该类不可以被继承。
- final 修饰的变量即成为常量,只能赋值一次,但是 final 所修饰局部变量和成员变量有所不同。
- final 修饰的局部变量必须使用之前被赋值一次才能使用。
- final 修饰的成员变量在声明时没有赋值的叫“空白 final 变量”。空白 final 变量必须在构造方法或静态代码块中初始化,
例子:
在项目中创建类Part,在类体中创建变量age与变量PI.在主方法中可以分别将变量与常量赋值,通过输出信息可测试变量与常量的有效范围。
变量的有效范围
变量的有效范围是指:程序代码能够访问该变量的区域;如超出该区域,则编译时会出现错误。
根据变量的有效范围将变量分为全局变量(成员变量)和局部变量
成员变量 :
- 在类体中定义的变量,成员变量在整个类中都是有效的。
- 成员变量分为静态变量和实例变量
- 静态变量可以跨类,甚至可达到整个应用程序之内。
除了能在定义它的类内存区,还能通过“类名.静态变量”的方式在其他类中使用
例子:
class var{
int x = 45;//x为实例变量
static int y=90;//y为静态变量
}
局部变量:
- 只在当前代码块中有效。类中声明的变量,方法的参数都属于局部变量。
- 局部变量的生命周期取决与方法。
局部变量可与成员变量的名字相同,此时成员变量被隐藏,成员变量暂时失效。所以一定要避免变量名重复。