第四章 变量和常量
1. Java的访问控制修饰符
使用访问控制修饰符可以限制数据的访问权限。访问控制修饰符有4个等级:private、protected、 public和默认(不指定修饰符)。
类型/权限 | private | protected | public | 默认 |
所属类 | 可访问 | 可访问 | 可访问 | 可访问 |
同一个包中的其他类(包括子类) | 不可访问 | 可访问 | 可访问 | 可访问 |
不同包中的子类 | 不可访问 | 可访问 | 可访问 | 不可访问 |
不同包中的非子类 | 不可访问 | 不可访问 | 可访问 | 不可访问 |
2. 变量:变量是指在程序运行过程中可以发生改变的量,用于在程序运行时临时存放数据。要使用变 量,首先必须先声明变量。Java中的变量分为局部变量(位于方法体内的变量)和成员变量 (位于类中方法体外的变量)。
声明变量的语法格式:数据类型 变量名1,变量名2,...;
可以一次声明一个变量,也可以同时声明多个变量,各变量之间用逗号分隔(例如 int a; 或 int a,b,c;)。可 以在声明变量的同时为变量赋值(例如int a=10;或float x,y=5.23f;)
局部变量:局部变量的作用域仅限于它所在的方法体内,超出方法体的范围(即方法体的{ }外)无 效,无法被调用。系统不会对局部变量自动初始化,即局部变量没有默认值。
成员变量:成员变量作用于整个类中,对于成员变量,可以为其添加访问控制修饰符(如public、 private等)和"static"字样,以限制访问变量的权限和变量的创建方式。系统会为没有初始 化的成员变量自动初始化,其中,数值型变量会初始化为0,字符型变量会初始化为'o',复合 型变量会初始化为null,布尔型变量会初始化为false。
static变量:Java中包括两种类型的成员变量。被static修饰的称为类变量(也称静态变量),未 被static修饰的称为实例变量。两者区别:类变量对于整个类的所有对象来说是共享的,即无 论创建了多少个对象,对类中所有对象来说,共享一份类变量。类变量可以通过类名或者某个 对象进行访问。实例变量只能通过对象访问,每个对象单独访问各自的实例变量。
3. 常量:常量是指在程序运行过程中不能改变的量,用来存储一个固定的值。在Java中,常用final来 声明常量,且常量名全部用大写字母,以便与变量名有所区别。常量也有成员常量和方法常 量之分,用法与特点和变量相似。