[学习笔记] Java变量和常量

变量

根据变量指代的数据类型的不同, Java中的变量分为基本类型变量和引用类型变量。变量必须先声明后使用。声明格式:

type identifier [=value];

type为数据类型,identifier为变量名。若要同时声明多个变量,使用逗号分隔。定义变量时可以给变量赋一个初始值,也可以在使用时再赋值。

 

变量作用范围

Java中的多行语句通过 { } 括起来,并以 { } 内作为自身的作用范围。只要 { }嵌套正确,编译器就能识别出语句块的开始和结束。

定义的变量有各自的作用域,通常是从定义开始至变量所在的语句块结束超出作用域引用变量,编译器会报错

 

根据变量定义的位置不同,又可将变量分为类变量、成员变量、局部变量。

局部变量

局部变量在方法、语句块中声明;

局部变量在方法或语句块执行时创建,当方法或语句块结束时被销毁;

局部变量没有默认值,声明后必须经过初始化才能使用;

修饰符不能用于局部变量;

 

成员变量

成员变量在方法和语句块之外,类的内部声明;

成员变量随着对象的创建而创建,随着对象的销毁而销毁;

根据变量定义时指定的类型,会为成员变量产生默认值。数值类型变量的默认值为0,布尔类型变量的默认值为false,引用型变量的默认值为null;

变量的值可以通过变量名直接访问,从静态方法或其他类访问成员变量时必须使用完全限定名:对象引用.成员变量名

访问修饰符可以用于成员变量;

 

类变量(静态变量)

类变量属于类,不属于任何实例;

类变量也是在方法之外,类的内部定义,但需要使用static关键字修饰;

类变量存储在静态存储区,当类对应的字节码文件被加载时就会分配内存空间,程序结束时销毁;

类变量可以通过类名.类变量的方式引用;

 

使用var保留类型名定义变量

从Java 10开始,引入局部变量类型推断功能。可以使用保留类型名称var代替实际类型来定义局部变量,比如:var str=new StringBuilder();

在编译期间,编译器会根据赋值推断出str变量的实际类型,变量定义语句var str=new StringBuilder()实际上是StringBuilder str=new StringBuilder();

 


常量

在定义变量的语句中加入final修饰符,则表示定义常量;

相对于变量,常量在定义并初始化后即不能再次被赋值,否则会导致编译错误;

常量是有意义的变量,常量名通常全部大写;

 

posted @ 2022-04-21 20:49  糖小豆  阅读(46)  评论(0)    收藏  举报