1.4 变量的初始化
变量从声明的位置来看可以分为两种类型,一是实例变量instance variable,即声明在类一级;另一种是局部变量local variable,它声明在方法一级。这两类变量除了声明的位置不同,它们最主要的区别在于是否需要初始化的问题。下面我们具体来讨论一下这个问题。
n 实例变量
类的成员就是定义在类一级的变量。它们实际上是可以不需要初始化的,系统一般会自动给它们赋一个默认值。
u 基本类型
对于8种基本类型来说,Boolean型默认赋值false,char型会默认为Unicode字符集的/u0000,而其余几种类型都默认为0。
u 对象类型
对于对象类型,系统不会赋予任何默认值,但会表示为null。
u 数组类型
数组类型于对象类型类似,当你不初始化它的时候,它也是等于null。但如果你初始化它,则有些不同,它与基本类型相似会默认为0。
n 局部变量
对于局部变量,一般来说它必须初始化。因为无论是基本类型还是对象类型,系统都不会自动赋于任何默认值,所以你必须指定一定的值。当然,如果你定义了局部变量而不去使用它,编译也是可以通过的。