Chinaunix首页 | 论坛 | 博客
  • 博客访问: 606736
  • 博文数量: 841
  • 博客积分: 5000
  • 博客等级: 大校
  • 技术积分: 5010
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-28 10:08
文章分类

全部博文(841)

文章存档

2011年(1)

2008年(840)

我的朋友

分类:

2008-10-28 10:15:14

  经常听到有人说java中没有指针。事实如此吗?no,java是有指针的,只不过换了个名字而已,也就是我们经常提到的引用。我们知道,在java中一切都是对象,那么我们如何操控对象?如何在成千上万的对象中找到我们所需的那个对象呢?又是如何让对象按照我们的意思来完成任务的呢?

      Object o = new Object();

      这是java中最常见的语句了,在这句话中做了三件事。首先声明一个Object类型的变量o,在内存中为对象划分一块地址new Object(),将声明的变量指向内存中的对象。如此一来,我们就可以通过o来操纵对象了。就好像孩子们玩的遥控飞机,在空中飞行的是飞机,而使它做出优美动作的却是孩子们手中的摇控器。

      \"克隆\"是如今听到的较多的词汇,听说已经将某只羊克隆了好几份了。但愿这种技术不要在人身上实验。java中也有\"克隆\",与现实世界的克隆一样,将一个实际存在的对象拷贝几份。如下:

    //倒霉的羊
    public class Sheep implements Cloneable{
    private String name;
    public void setName(String arg) {
    name = arg;
    }
    public String getName() {
    return name;
    }
    public Object clone() throws CloneNotSupportedException {
    return super.clone();
    }
    }
    //克隆
    public class Main {
    public static void main(String[] args) throws CloneNotSupportedException {
    Sheep sheep = new Sheep(); //先得到那只羊的实例
    sheep.setName(\"我是真的\"); //给它做个记号
    System.out.println(\"sheep.getName() = \" + sheep.getName());
    Sheep sheepClone = (Sheep)sheep.clone(); //开始克隆
    System.out.println(\"sheepClone.getName() = \" + sheepClone.getName());
    }
    }

      运行程序结果为:

      sheep.getName() = 我是真的

      sheepClone.getName() = 我是真的

【责编:landy】

--------------------next---------------------

阅读(243) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~