A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 颜庭飞 黑马帝   /  2011-10-13 22:20  /  2655 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 伍碧林 于 2011-10-13 22:32 编辑

普通申明一个对象是这样的
Dog dog = new Dog();
那么这个时候dog就是类Dog的一个对象,这个对象名字就是dog
再来看下面一个例子:
method(Dog dog);
整理method是一个方法,他需要传递一个对象来作为参数,那么这个时候有2种方法:
方法1:
Dog dog = new Dog();
  method (dog);
方法2:
method (new Dog());
方法2中new Dog()就是一个匿名对象,他没有名字。这样可以理解了吧。
至于匿名对象一般用在什么地方,应该是需要的时候就用吧.
回复 使用道具 举报
       打个比方:
    有的程序会直接写new Dog();有的程序则需要写 Dog dog = new Dog();请问有什么区别?有区别的话都分别在什么时候用?

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

2 个回复

倒序浏览
本帖最后由 zhangxinxin 于 2011-10-14 01:12 编辑

New Dog()
创建一个Dog的对象,但它又是个匿名对象,就是没有引用变量指向它,相当于没有名字,我们不方便使用这个对象,在程序中只能使用一次,如果再想找这个对象使用它,没法找。不知道它的地址在哪。
Dog dog=new Dog()
创建一个Dog的对象,使用引用变量dog指向它。就是在dog中有了这个对象的地址,当我们创建完这个对象后,方便通过p找到这个对象。
在什么时候用,我也不太清楚。我的理解是,你如果只想得到Dog类的对象,用一次就完事,那就用匿名对象。如果还要再次用到这个类的对象,你就要定义一个引用对象,引向它,方便查找。可能还有别的区别,你可以再找资料查证一下。

评分

参与人数 1技术分 +2 收起 理由
admin + 2

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马