变量
-
变量是什么:就是可以变化的量
- 例如咱们上学时学习的一元一次方程的 X = Y 既是变量;X和Y可以是任何类型的值,具体有我们定义
-
Java是一种强类型语言,每个变量都必须声明其类型
-
Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域
-
注意事项
- 每个变量都有类型,类型可以是基本类型,也可以是引用类型
- 变量名必须是合法的标识符
- 变量声明是一条完整的语句,因此每一个声明都必须以分号结束
变量的作用域
-
类变量:从属于类,无需赋值方法名即可在当前类内直接引用,但必须赋予static关键词
public class Demo07{ //类变量:必须赋予关键词static static double salary = 2500; //具体应为2500.0,这里应用了自动转换类型(double比int优先级高) public static void main(String[] args){ //类变量直接引用 System.out.println(salary); } }
-
实例变量:从属于对象(类名,必须赋值类方法名),在main方法之外定义,可以不初始化
- 不同类型变量未赋值默认值不同
- string(字符串):null
- int(整数):0
- double(浮点数):0.0
- boolean(布尔值):false
- 除了基本类型其余都为null
public class Demo07{ //对象 (Demo07) String name; //直接定义空值即可使用,可以不初始化 int age; //定义相对简单,但使用条件苛刻 public static void main(String[] args){ //变量类型 变量名字 = new Demo07(); Demo07 demo07 = new Demo07(); //自定义类名类型,赋值实例变量方法 System.out.println(Demo07.age); //0 实例变量int类型未赋值默认为0 System.out.println(Demo07.name); //null 实例变量string类型未赋值默认为null } }
- 不同类型变量未赋值默认值不同
-
局部变量:在只在main方法里生效的变量,必须声明和初始化值
public class Demo07 { public static void main(String[] args) { //开始 //局部变量:是在main方法里的变量,必须声明和初始化值 int i = 10; //必须赋对应类型的值,单‘int i;’无法引用 }//结束 }
常量
-
常量(Constant):初始化(initialize)后不能再改变值 (不会变动的值)
-
所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变
-
常量一般使用大写字符
public class Demo08 { //常量关键词:final //修饰符(类型double前面的final与static)不存在先后顺序 //double为固定类型关键词因此区分先后顺序 static final double PI = 3.14; //使用了类变量,常量名一般使用大写字符表示 //final static double PI = 3.14; public static void main(String[] args) { System.out.println(PI); } }
变量的命名规范
- 所有变量、方法、类名:见名知意 (可读性、看见名字即可知道意思)
- 类成员变量:首字母小写和驼峰原则:monthSalary (除了第一个单词小写,后面的单词首字母大写:lastname -> lastName)
- 局部变量:首字母小写和驼峰原则
- 常量:大写字母和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则:Man,GoodMan
- 方法名:首字母小写和驼峰原则:run(),runRun()