JAVA变量和常量

      我们都知道,java中会有变量,变量会被赋值,那么,值不能被改变的量我们称为常量,值能够被改变的量称为变量,不论是变量或常量,都必须要使用合法的标识符去表示。

一:标识符

      什么是标识符呢?简单的说,就如人的名字一样,它也表示一个名字,只是是用来标识类名、变量名、方法名、数组名等的字符序列。

       在java中,我们规定标识符是由任意顺序的字母、下划线(_)、美元符号($)和数字组成,并且第一个字符不能是数字,而且还不能是java中的保留关键字。

        在下面的代码中,不合法的标识符会出现编译错误。

public static void demo(){
		//合法的标识符
		String name;
		int user_age;
		float $price;
		
		//不合法的标识符
		int 4word;
		int true;
 }

       注意:在java语言里面,是严格区分大小写的,比如name和Name就表示两个不同的标识符,而且java语言是使用unicode标准字符集的,最多可标识65535个字符。

      什么是java关键字呢?就是在java里它们已经被赋予了特定的意义,所以不能使用这些关键字来作为标识符。

JAVA关键字
intpublicthisfinallybooleanabstract
continuefloatlongshortthrowthrows
returnbreakforstaticnewinterface
ifgotodefaultbytedocase
strictfppackagesupervoidtryswitch
elsecatchimplementsprivatefinalclass
extendsvolatilewhilesynchronizedinstanceofchar
protectimportdtransientimplementsdafauledouble
二:变量的声明

        定义变量,首先需要定义变量的数据类型,而且在程序运行过程中,它的值是可以变化的,所以称为变量。

        而且需要准守一下规则:

        1:变量名要是合法的标识符;

        2:不能是java关键字;

        3:不能重复;

         4:应该选择有意义的字符作为变量名。

public static void main(String[] args) {
		int a = 1;   //定义int类型的变量
		char c = 'w'; //定义char类型的变量
		
		a = 3;
		System.out.println(a);//输出结果为3
}

       上述代码,我们定义了两个变量,可以看到a先赋值为1,然后赋值为3,最终输出结果为3,也就是说,a是变量,可以更改它的值。

三:常量的声明

       什么是常量?在程序运行过程中,值一直不变的量称作常量,也被叫做"final变量"。常量在程序中只能被赋值一次,而且需要通过final关键字进行限定:final 数据类型 常量名称 = 值。常量它在为所有对象共享时是非常有用的。  

注意:常量名通常来说,都是使用大写字母来表示,但是呢,也不是非要这样做,只是这样能够清楚的表示正在使用的是常量。

public static void finalCl(){
		final int AGE; //定义int类型的常量
		final String NAME = "good"; //定义String类型的常量并赋值
		NAME = "hello"; //编译错误
		System.out.println(NAME);
}

       上述代码,定义了常量NAME,当再次赋值时,会出现编译错误,也就是说常量只能赋值一次。

四:变量的有效范围

       变量的有效范围是指程序代码能够访问这个变量的区域,如果超出了这个区域,会出现编译错误,一般根据有效范围,分为成员变量(全局变量)和局部变量。

⒈:成员变量

       什么是成员变量呢?一般来说,在类中定义的变量被称为成员变量,它能作用于整个类,也就是在整个类里我们都可以使用它。类中的成员变量又可以分为静态变量和实例变量。

       在变量前面加上static,这样的变量就称作静态变量,静态变量可以跨类,也就是在其他类中也可以使用这个变量,直接以"类名.静态变量"就可以在其他类中使用了。

public class Bsf {
	static int price = 22;//静态变量
	int age = 22; //实例变量
}
public class Number {
	public static void main(String[] args) {
		System.out.println(Bsf.price); //可以使用Bsf中的静态变量price
	}
}

2:局部变量

      在类里面的方法中定义的变量称为局部变量,它只作用在这个方法内,并且方法的参数也是局部变量;当方法被调用时,java虚拟机会为该变量分配内存空间,当方法执行结束后,会释放该内存空间,局部变量也将会销毁。

注意:局部变量可以与成员变量名字相同,这个时候成员变量将被隐藏,即这个成员变量在这个方法中暂时失效了。

public class Val {
	
	static int time = 33; //定义成员变量time
	
	public static void main(String[] args) {
		int time = 32; //定义局部变量time
		int age = 12; //定义局部变量age
		System.out.println(time); //输出32
		demo();
	}
	
	public static void demo(){
		//System.out.println(age); //编译错误
		System.out.println(time); //输出33
	}

}
      上述代码中,可以看到,定义了成员变量time,在main方法中定义了局部变量time,此时,输出time为32,也就是成员变量在这个方法中暂时失效了,而且定义的局部变量age只能作用于main方法中,在demo方法中调用会出现编译错误。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值