教材里说JAVA数组声明后必须用new分配内存,实际上不用new也可以,这是为什么呢?用于不用有什么区别?

如题,谢谢了... 如题,谢谢了 展开
 我来答
永瑛4P
2014-10-26 · 超过44用户采纳过TA的回答
知道小有建树答主
回答量:89
采纳率:0%
帮助的人:54万
展开全部
new 一个对象出来,比如
SomeClass sc=new SomeClass();
这个时候已经为sc这个对象分配了指向 new SomeClass() 所创建的内存空间。
即对这个对象sc进行了实例化。
而SomeClass sc=null,则sc对象未进行实例化,是一个空的对象,未能指向任何内存空间。
(转)
jamxval
2014-10-26 · TA获得超过6822个赞
知道大有可为答主
回答量:4308
采纳率:82%
帮助的人:1430万
展开全部

编程中,

String[] a;

这只是声明了一个符号及它将来代表的对象的类型。但我们并未实际上给它一个东西代表着。


我们需要:

a = new String[0]; 或 a = new String[] { "afewf", "befef" } ;


这样来具体创建对象并让它代表一下。


变量符号与真实的对象本身并不是一回事。

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式