java,new与不new的区别?

我有一个A类,在B类里声明一个A类,但我不用Aa=newA();我就直接申明一个A的属性方B类里面,请问这样有什么区别?... 我有一个A类,在B类里声明一个A类,但我不用 A a=new A();

我就直接申明一个A的属性方B类里面,请问这样有什么区别?
展开
 我来答
wskfhvhc
2015-06-16 · TA获得超过692个赞
知道小有建树答主
回答量:307
采纳率:66%
帮助的人:302万
展开全部
在java中,new用来开辟堆内存,又叫初始化,一般情况下,对象创建好后,都需要用new进行实例化;不用new通常在单例模式中可见,对象在类里面创建,构造函数用private修饰,外面不能创建对象,只能调用内部方法静态方法,即对象的初始化在创建对象时已经完成
一般来说,不使用new的情况都属于一些特定的情况,比如:
1.
Class clas = Class.forName(“NewClass”);
NewClass obj = (NewClass) clas.newInstance();
- Class.forName()这个方法会加载这个类并创建一个实例
2.
Demo deo = new Demo();
Demo1 deo1 = deo.clone();
邬珏厍曾琪
2019-10-25 · TA获得超过3774个赞
知道大有可为答主
回答量:3054
采纳率:33%
帮助的人:404万
展开全部
有一点点区别的,
一般都是按照第二种来做的,第一种的思路是定义hostlist
然后赋值,第二种是定义的同时赋值,
通常第一种的做法是:
list
hostlist

hostlist
=
datacenter0.gethostlist();
不需要
new
arraylist
();的,因为new
出来也没用过,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友b7d2b2f
2008-06-02 · TA获得超过901个赞
知道小有建树答主
回答量:994
采纳率:50%
帮助的人:581万
展开全部
A a;
//对象的声明,如果你不new就用a,会报空指针异常(NullpointException)

A a=new A();
已经在堆里开辟了内存。记住:没有new的对象是不能用的!!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友5c4de0b63
2008-06-02
知道答主
回答量:16
采纳率:0%
帮助的人:0
展开全部
·使用下列语法可创建对象:
new 构造函数

·关键字 new 通常称为创建运算符,用于分配对象内存,并将该内存初始化为缺省值。

·一旦 new 完成分配和初始化内存,它就将调用构造函数来执行对象初始化。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
秦汉书画当家9
2008-06-02
知道答主
回答量:30
采纳率:0%
帮助的人:0
展开全部
你是说
A a;
和A a=new A();
的区别吧?

一个 是创建了A的引用 但没分配内存空间、、

一个是既分配的引用也创建了内存地址 把引用指向该内存
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式