用引用操纵对象
雷迪森and砖头们,让我们来说下引用和对象有啥区别?
在前面的文章中简单概括了对象(某个将数据和功能封装到一块的实例),下面我们举个简单的例子:把“人”作为一个类型,实例化出一个具体的名叫李小明的人,这个人是一个对象。引用就是给这个实例化出的人起的名字来指代他,这个人起个名字叫李小明,一说李小明就知道指的就是这个人,那李小明就是这个人的引用。
java里(几乎)一切都可以被视为对象,因此可采用单一固定的语法。尽管一切都可看作对象,但操纵的标识符实际上是对象的一个引用。
举例:
我们把家里的遥控器(引用)来操纵电视机(对象)。只要拿着这个遥控器,就能保持与电视机的连接,当有人想换频道或调音量时,实际操控的是遥控器(引用),再由遥控器控制电视机(对象)。如果想在房间里走动,同时还能控制电视机,那么只需要随身携带遥控器(引用)而不是电视机(对象)。
此外,即使没有电视机,遥控器也可以单独存在。也就是说,你拥有一个引用,但是引用不一定必须有对象与它关联。例如: String str; 在这里str就是引用。一般这样的写法不安全,一种安全的做法是,创建一个引用的同时便进行初始化:String str = “adf”;