Java是一门面向对象的语言,在实现面向对象的特性中,变量是不可或缺的一部分。Java变量的种类主要有三种:局部变量、成员变量和静态变量。
局部变量
局部变量是在方法、代码块或者语句中定义的变量。局部变量只能被定义在它所在的方法内部,这意味着其他方法不能访问这个变量。局部变量在函数中声明,函数执行结束后会销毁局部变量。局部变量主要有以下几种类型:
自动变量:定义在方法中的变量。
形式参数:定义在方法签名处,供方法内部使用。
代码块变量:定义在代码块中,只在代码块中有效。
成员变量和静态变量
成员变量和静态变量都是定义在类中的变量。成员变量和静态变量都可以在类内任何方法中使用。但它们的使用规则却不同。成员变量是对象特有的数据,每个对象中的成员变量都相互独立,各有自己的值,声明成员变量时不需要加static。而静态变量是属于类的变量,所有属于这个类的对象共享静态变量,所有静态变量都使用类名进行访问,声明静态变量时需要使用static关键字。
成员变量和静态变量都可以保护数据的一致性,使用前必须进行赋值,否则在使用时会产生编译错误。相对来说,静态变量的优点是:所有实例共享,而且在程序运行前就已经进行了初始化,所有类中的实例都可以来访问这个静态变量,方便管理和维护数据的一致性。
总结
Java变量有三种类型:局部变量、成员变量和静态变量。局部变量是在某个方法、代码块、语句中定义的变量,只在定义范围内有效。成员变量是任意对象独有的数据,可以在同一类的任意方法中使用。而静态变量是属于类域的变量,可以通过类直接访问,所有该类的对象共享。选择不同类型的变量,应该根据具体情况而变化。之所以Java能够有效地用来编写大型程序,就是因为它对变量做了这些约束和规范