什么是变量
变量是指宅程序运行期间,内容可以发生改变的量
创建一个变量并使用的格式
- 分开写的格式:
- 数据类型 变量名称; //创建了一个变量
- 变量名称 = 数据值;//赋值,将右边的数据值,赋值给左边的变量
- 一步到位的格式:
- 数据类型 变量名称 = 数据值; //在创建一个变量的同时,立刻放入指定的数据值
变量的分类及其作用域
变量的分类
- 可以根据变量的作用域做以下三种分类:
- 类变量
- 实例变量
- 局部变量
public class DemoClass {
//属性:变量(类变量)
//static为修饰符,先后位置无所谓
static double salary = 25000;
//实例变量:从属于对象。如果不初始化,会输出该数据类型的默认值
//基本类型除了布尔值为false,其他都为0(可以为0、0.0或者\u0000)
//除了基本类型,其余的都是null
String name;
int age;
//main方法
public static void main(String[] args) {
System.out.println("===========局部变量=============");
//局部变量,必须声明和初始化值
int i=1;
System.out.println(i);
System.out.println("===========实例变量(未初始化)=============");
//实例变量:变量类型 变量名字 = new DemoClass();
DemoClass demo = new DemoClass();
System.out.println(demo.name);
System.out.println(demo.age);
System.out.println("===========类变量=============");
//类变量 加一个修饰符static
System.out.println(salary);
}
//其他方法
public void add(){
}
}
输出:
===========局部变量=============
1
===========实例变量(未初始化)=============
null
0
===========类变量=============
25000.0
类变量
- 需要加个static修饰符(修饰符的不区分先后顺序)
- 格式:static 数据类型 类变量名 = 初始化值;
- 类变量可以不初始化
- 类变量的作用域在整个类的范围内
实例变量
- 格式:变量类型(类名) 变量名 = new 类名();
然后使用 类名.类属性 来访问类的属性 - 实例类型的作用域可以在类的范围之外(需要实例化)
- 类的属性也可以不用初始化
局部变量
- 格式:变量类型 变量名 = 值;
- 局部变量必须初始化
(补充)数据类型的默认值
- 四大基本类型,除了布尔类型的默认值为false,其他的都为0(可以为0、0.0或者\u0000)
- 除了基本类型,其他的类型的默认值都为null
常量(constant)
- 初始化(initialize)后不能再改变值!不会变动的值
- 所谓的常量可以理解为一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变
- 格式:final 数据类型 常量名 = 值(final为关键词)
注意事项
- 如果创建多个变量,那么变量之间的名称不可以重复
- 对于float和long类型来说,字母后缀F和L不能丢掉
- 如果使用byte或者short类型的变量,那么右侧的数据值不能超过左侧类型的范围
- 没有进行赋值的变量,不能直接使用。一定要赋值以后才可以使用。
- 变量使用不能超过其作用域范围
【作用域 】:从定义变量的一行开始,一直到直接所属的大括号结束为止 - 可以通过一个语句来创建多个变量,但一般情况下不推荐怎么写
变量的命名规范
- 类名规范:首字母大写,后面每个单词的首字母都大写(大驼峰式)(HelloWorld)
- 类成员变量名规范:首字母小写,后面每个单词的首字母都大写(小驼峰式)(timeCount)
- 方法名规范:同变量名,也是小驼峰式
- 局部变量:小驼峰式
- 常量:全部大写加下划线(MAX_VALUE)
- 总结:除了类名和常量,其他全都是小驼峰式