开发者社区> 问答> 正文

java初学者关于new对象的问题

已解决


    Echo e1=new Echo();

    Echo e2=new Echo(); 

     Echo e1=new Echo();
     Echo e2=e1;

有什么不同

展开
收起
51干警网 2016-02-17 21:57:29 2866 0
3 条回答
写回答
取消 提交回答
  • 阿里云论坛版主,QQ 1978638808
    采纳回答

    第一种,e1和e2是两个不同的对象,第二种,e1和e2是同一个对象。
    通俗点讲,第一种中,对e1操作基本不会对e2有影响,同理对e2操作基本也不会对e1有影响;第二种中,对e1操作和e2操作效果是一样的,他们都是同一个东西。

    2019-07-17 18:29:14
    赞同 展开评论 打赏
  • 第一种创建的是两个对象,第二种是指向了同一个对象

    2020-02-28 00:38:46
    赞同 展开评论 打赏
  • 第一种在java堆内存分配了2块区域。然后栈上面的变量e1,e2分别指向这2块区域。
    第二种在java堆内存只分配了一块区域,栈上面的变量e1,e2都指向这块区域

    2019-07-17 18:29:14
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载