社区
Java SE
帖子详情
直接使用new 创建一个对象和使用对象引用的区别
ccww7788
2006-02-01 11:27:21
class aaa{
public void a1()
{
System.out.println("1111");
}
}
public class bbb{
public static void main(String[]args)
{
aaa a=new aaa(); 使用new创建的对象
a.a1();
aaa b; 这里使用引用
}
}
请问使用new创建对象和使用应用本质上或者使用有什么不同
...全文
358
12
打赏
收藏
直接使用new 创建一个对象和使用对象引用的区别
class aaa{ public void a1() { System.out.println("1111"); } } public class bbb{ public static void main(String[]args) { aaa a=new aaa(); 使用new创建的对象 a.a1(); aaa b; 这里使用引用 } } 请问使用new创建对象和使用应用本质上或者使用有什么不同
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
luke817
2006-02-04
打赏
举报
回复
你这 “aaa b; 这里使用引用”
根本不是使用,
只是声明一个名为B的对象引用(句柄);
IT佬
2006-02-03
打赏
举报
回复
晕 没有初始化啊
yzhxhwt
2006-02-02
打赏
举报
回复
首先bbb的类内用aaa创建了a对象,a对象调用a1方法是理所当然,然后aaa有创建了b的引用,这时候还没有分配空间,使用new分配空间,你现在只是个引用,写了等于没写,没有意义。
ehope8
2006-02-02
打赏
举报
回复
aaa b is a reference, not the aaa object itself , all it is saying is I have a reference point to a aaa kind of object. where is the object, no where.
It is until you start to use either new or refer to another var.
For Example
aaa b;
b = new aaa(); // create a new object
b = a; // a address is copied to b, so both a and b point to the same object
dlxu
2006-02-02
打赏
举报
回复
楼主这样好像运行不行吧。如果你调用了B的方法,肯定会出没有初始化的错误的
wangzhanlili
2006-02-02
打赏
举报
回复
aaa b; null
racewind
2006-02-02
打赏
举报
回复
直接使用new 创建一个对象和使用对象引用的区别 ?
使用new来创建,那么程序就会在heap上分配空间来储存它,但是当你引用的时候则不然,你可以为它分配空间也可不分配,看你需要了!分配了就是个对象,如果不分配就是null,不占用任何硬件资源。aaa a=new aaa(); 使用new创建的对象
a.a1();-因为你实例化了一个对象所以你可以调用方法
aaa b;--对象根本不存在,所以你不可能用null reference操作
lei_elton
2006-02-02
打赏
举报
回复
B不能用
hzhou
2006-02-02
打赏
举报
回复
a已经被分配内存了,可以用了,b只是个指针,还不能用。
已经存在
2006-02-02
打赏
举报
回复
aaa a;
此时应该是告诉编译器有aaa这样的一个对象a了吧,但系统并未为他分配任何空间。
a=new aaa();
系统才应该为他分配空间了
absjustin
2006-02-02
打赏
举报
回复
你用aaa类创建咯b 但是没有初始化 如果使用的话 会报“没有初始化B”的错误 而且 此时b没有分配到内存空间 相当于是不存在的...
didoleo
2006-02-01
打赏
举报
回复
感觉你是不是从c++过来的?,aaa b; 这样在c++里 b在内存中实例化了。在java里
b还是null.
java六大必须理解的问题 文档
java六大必须理解的问题、内容比较详细、写的比较具体
为什么
使用
spring框架中的IOC来创建
对象
?它和
使用
new
关键字来创建
对象
的
区别
是什么?
首先,java是一门灵活的语言,到达同一个目的,可以有无数种方法,这个和解答数学题有点类似。 第二,
使用
new
关键字创建的
对象
属于强
引用
对象
,所谓强
引用
,就是jvm垃圾回收机制永远不会回收这类
对象
,这时候需要程序员去手动去在应该移除
引用
的时候去将它移除。如果没有移除,这个
对象
将一直存在,久而久之,会引起内存泄露问题。 第三,
使用
spring中的IOC就能很好的解决上述问题,
使用
IOC创建
对象
的...
Spring创建Bean与
new
对象
的
区别
1、Spring是
使用
反射创建的
对象
,可指定
对象
的生命周期;如果是
直接
new
的话就是
直接
创建一个
对象
。 2、Spring实现了
对象
池,一些
对象
创建和
使用
完毕之后不会被销毁,放进
对象
池(某种集合)以备下次
使用
,下次再需要这个
对象
,不
new
,
直接
从池里取,节省时间。 3、
使用
new
关键字创建的
对象
属于强
引用
对象
,所谓强
引用
,就是jvm垃圾回收机制永远不会回收这类
对象
,这时候需要手动移除
引用
。如果没有移除,这个
对象
将一直存在,久而久之,会引起内存泄露问题。 4、
使用
spring中的IOC就能很好的解决上述问
Java8中
直接
new
对象
和用 类名::
new
创建
对象
这两种形式有什么
区别
小编这两天在看算法相关的知识,结果遇到了java8的东西,于是开始研究java8(小编对于自己的性格也很无奈,不影响算法的情况下,是应该继续看算法的。但是里面涉及到的java8知识不懂,就感觉很别扭,于是就开始研究java8),在看到 构造方法
引用
相关的知识时,看到了一个别人问的问题Java8中
直接
new
对象
和用 类名::
new
创建
对象
这两种形式有什么
区别
吗?一直想不明白这个问题: public static void main(String[] args
C++
对象
和实例的
区别
,以及用
new
和不用
new
创建类
对象
区别
起初刚学C++时,很不习惯用
new
,后来看老外的程序,发现几乎都是
使用
new
,想一想
区别
也不是太大,但是在大一点的项目设计中,有时候不
使用
new
的确会带来很多问题。当然这都是跟
new
的用法有关的。
new
创建类
对象
,
使用
完后需
使用
delete删除,跟申请内存类似。所以,
new
有时候又不太适合,比如在频繁调用场合,
使用
局部
new
类
对象
就不是个好选择,
使用
全局类
对象
或一个经过初始化的全局类指针似乎更加高
Java SE
62,629
社区成员
307,258
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章