免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4537 | 回复: 19
打印 上一主题 下一主题

java中的new,希望高手帮助解答一下(急) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-09-27 10:57 |只看该作者 |倒序浏览
java中的new到底是什么意思?有没有他又什么区别,数我看了好几本,但是,没有找到他的解释,至少是没有解释明白,也许是我的数不太好,希望各位帮助解答一下吧,谢了

论坛徽章:
0
2 [报告]
发表于 2004-09-27 11:13 |只看该作者

java中的new,希望高手帮助解答一下(急)

[quote]原帖由 "puzzlewen"]java中的new到底是什么意思?有没有他又什么区别,数我看了好几本,但是,没有找到他的解释,至少是没有解释明白,也许是我的数不太好,希望各位帮助解答一下吧,谢了[/quote 发表:


new的意思是创建一个对象。例如
  1. Object obj = new Object();
复制代码

这句的意思是创建一个Object对象,对象的名字是obj...
ps:创建对象的过程,也是内存分配的过程。

论坛徽章:
0
3 [报告]
发表于 2004-09-27 12:49 |只看该作者

java中的new,希望高手帮助解答一下(急)

new 是分配一块内存,Object()是调用构造器初始化这块内存.

论坛徽章:
0
4 [报告]
发表于 2004-09-27 13:06 |只看该作者

java中的new,希望高手帮助解答一下(急)

你桌的这个我知道,但是,我看书里面有的时候没有用new比如String a;
可是后来他又用上了,那么我想知道,有那个new和没有那个有什么区别?


谢谢

论坛徽章:
0
5 [报告]
发表于 2004-09-27 18:29 |只看该作者

java中的new,希望高手帮助解答一下(急)

String类是一种特殊情况,你记住就行了,string a = "aaa";其实与String a = new String("aaa";的效果一样,其它的类要创建对象就必须用new.除非你用了别人封装的比如用工厂方法封装了的,那么对象的创建方式就不一样了,要看类的编写者但是最终还是要用NEW的,对了还有一种情况是Class.newInstance();

论坛徽章:
0
6 [报告]
发表于 2004-09-27 20:42 |只看该作者

java中的new,希望高手帮助解答一下(急)

有的时候是创建一个新的对像有的时候是刷新下`!不一定了`
!看看你是做什么用的这个刷新不是说刷新是说把一个B变成b的意思~!
就是新的意思~!

论坛徽章:
0
7 [报告]
发表于 2004-09-27 22:23 |只看该作者

java中的new,希望高手帮助解答一下(急)

如果没有用new, i.e String s; 只是declare了一个reference which is a type of String. There is no new object is created or there is no memory allocation in heap.
To create a new String object, you have to use keyword new i.e. String s = new String("a". There is memory allocated in heap for the new object, and the 'entry' to the object in heap is assigned to the reference 's'.
Before you use any reference, you have to initiate it by either referring it to an existing object or creating a new object for it. If you don't, the reference is useless, your program will not compile or RuntimeException will be thown.

论坛徽章:
0
8 [报告]
发表于 2004-09-28 00:04 |只看该作者

java中的new,希望高手帮助解答一下(急)

Well, String is a bad example for new. When initializing a String, always use the form of String s = "a"  instead of String s = new String("a". The latter form will create 2 String objects, one for ("a" and one for new. This is listed as Item 4 in Joshua Bloch's "Effective Java Programming Language Guide".

论坛徽章:
0
9 [报告]
发表于 2004-09-28 07:36 |只看该作者

java中的new,希望高手帮助解答一下(急)

yup, you are absolutely right.  I did make a bad example.  Hope it didn't cofuse 楼主.

论坛徽章:
0
10 [报告]
发表于 2004-09-28 23:23 |只看该作者

java中的new,希望高手帮助解答一下(急)

实在是非常的感谢各位的热心帮助,哈哈,不过,我的英文还真是不怎么样,上面的两篇英文,看了半天总算明白了,大概意思就是说,只要是创建一个新的类,一般就都要用new?对吗?谢谢各位了!!!!!实在是万分的感谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP