本帖最后由 刘笑 于 2012-6-18 10:23 编辑
接口不算是指针,在java中引用差不多实现了指针的功能。
指针往往是在带来方便的同时也是导致代码不安全的根源,同时也会使程序的变得非常复杂难以理解,所以java放弃了指针。但实质上每一个new语句返回的都是一个指针的引用。一个对象会从实际的存储空间的某个位置开始占据一定数量的存储体。该对象的指针就是一个保存了对象存储地址的变量,并且这个存储地址就是对象在存储空间中的起始地址。在许多高级语言中指针是一种数据类型,而在Java中是使用对象的引用来替代的。考虑如下代码:
People p = NULL; q = new People("Jack","0001");
这里创建了两个对于对象引用的变量p和q。变量p初始化为null,null是一个空指针,它不指向任何地方,也就是它不指向任何类的对象,因此null可以赋值给任何类的对象的引用。变量q是一个对于People类的实例的引用,操作符new的作用实际上是为对象开辟足够的内存空间,而引用p是指向这一内存空间地址的指针。 |