变量、常量、作用域
1、变量
i、变量是什么:就是可以变化的量;
2、java是一种强类型语言,每个变量都必须声明其类型;
3、java变量是程序中最基本的存储单元,其要素包括变量名、变量类型和作用域。
2、声明变量
type varName [= value] [{, varName[ = alue]}]; //数据类型 变量名 = 值;可以使用逗号隔开来声明多个同类型的变量。 //例:
int a; int i = 1; int j = 1, 2, 3;
注意事项:
- 每个变量都有类型,类型可以是基本类型,也可以是引用类型;
- 变量名必须是合法的标识符;
- 变量声明是一条完整的语句,因此每一个声明都必须以分号结束。
3、变量的作用域
-
类变量
- 类变量(静态变量)独立于方法之外的变量,属于类本身。需要static修饰,事实上,类变量就是以static修饰的独立于方法之外的成员变量。
- 类变量必须在方法、构造方法和语句块之外。
- 无论一个类创建了多少个对象,类只拥有类变量的一份拷贝。
-
实例变量
- 实例变量(非静态变量):独立于方法之外的变量,依赖实例存在。不需要static修饰,事实上,实例变量就是没有static修饰的独立于方法之外的成员变量。
- 实例变量声明在一个类中,但在方法、构造方法和语句块之外。
- 当一个对象被实例化之后,每个实例变量的值就跟着确定。
- 实例变量在对象创建的时候创建,在对象被销毁的时候销毁。
- 实例变量的值应该至少被一个方法、构造方法或者语句块引用,使得外部能够通过这些方式获取实例变量信息。
- 实例变量可以声明在使用前或者使用后。
- 实例变量对于类中的方法、构造方法或者语句块是可见的。一般情况下应该把实例变量设为私有。通过使用访问修饰符可以使实例变量对子类可见。
- 实例变量具有默认值。数值型变量的默认值是0,布尔型变量的默认值是false,引用类型变量的默认值是null。变量的值可以在声明时指定,也可以在构造方法中指定。
-
局部变量
- 定义在方法体中的变量
-
常量
- 常量(Constant):初始化(initialize)后不能再改变值!不会变动的值;
- 所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变;
- 常量一般使用大写字符;
-
//常量的声明 final 常量名 = 值; final double PI = 3.14;
4、变量的命名规范
- 所有变量、方法、类名:见名知意;
- 类成员变量:首字母小写和驼峰原则:monthSalary
- 局部变量:首字母小写和驼峰原则:monthSalary
- 常量:大写字母和下划线:MAX_VLLUE
- 类名:首字母大写和驼峰原则:Man、GoodBoy
- 方法名:首字母小写和驼峰原则:run(),runRun()
package com.steven.demo; public class Variable { static int allClicks = 0; // 类变量 String str = "Hello World"; // 实例变量:从属于对象 public static void main(String[] args) { // 声明变量 int i = 1; // 也可以同时定义多个同类型的变量,但不建议这么写 // int a = 1, b = 2, c = 3 ; // 建议写成这个,提高代码的可读性 int a = 1; // 局部变量必须声明和初始值化 int b = 2; int c = 3; } }