java中使用每个变量前都必须先声明该变量,声明的语法格式:[变量类型] [变量名]
比如声明一个字符串类型的变量:String test
声明一个Object类型的变量:Object obj
变量名是自己任意取的,不过必须符合名称规则,变量类型可以是java自带类型,也可以是自定义的类型。
在声明以后才能使用变量,为变量赋值为做其他操作。
java中变量和对象的区别如下:
变量只是分配了栈内存,并没有分配内存空间,而对象是已经在内存中占用了空间的。
变量声明之后如果没有进行赋值,是不能在代码中使用的。而对象是可以在代码使用,并使用它的成员变量或者方法。
java成员变量和方法成员变量:在类体的变量部分中定义的变量,也称为属性。
我们先来看一个Clothes类的成员变量:
package
ch05.sample
public
class
Clothes
{
String
id
//实例变量
private
String
colorType
//实例变量
private
int
size
//实例变量
private
static
String
depart
//类变量
final
String
design="yangzi"
//常量
}
代码中的实例变量、类变量、常量都属于成员变量,那么其区分的依据是什么?这与变量的修饰符有关系,也就是上面代码中的private、static、final等修饰符。成员变量的修饰符见表5-1。
表5-1
成员变量的修饰符
修饰符
说明
public
成员变量可以被项目中的任何方法访问,建议尽量少用
protected
不在同一个包中的类不能访问,但子类可以访问
private
只能在同一个类中使用
static
类变量,其值为该类的所有对象共享,不会因类的对象不同而不同
final
最终成员变量,其值保持不变,即常量
transient
当对象被持久化时(例如写入数据库),该成员变量的值不需要保存
volatile
同步多线程访问的成员变量的值,以便使不同的线程总是得到
该成员变量的同一个值。
基本类型的成员变量
java的基本类型可以分为三类,字符类型char,布尔类型boolean以及数值类型byte、short、int、long、float、double。数值类型又可以分为整数类型byte、short、int、long和浮点数类型float、double。
JAVA中的数值类型不存在无符号的,它们的取值范围是固定的,不会随着机器硬件环境或者操作系统的改变而改变。
被以上八种基本类型修饰的变量为基本类型的成员变量