键盘手C 2016-04-17 15:40 采纳率: 60%
浏览 3314
已采纳

java中的引用和new的用法

初学java,有些问题很幼稚,还望各位大神能多扶持
首先,说说引用的问题,
我定义了一个A类。其中初始化属性name为A,
接下来:
A a = new A;//创建一个对象
A a1 = a;//这里好像是一个引用,有点不懂,我把他理解为指针,
a = new A; // 这是第二个问题,在创建对象的时候,一般不都是类 对象 = new 类吗?为什么这里可以直接new呢,而且看教程上是说又新分配了一个空间,我想问的是只要是new,都是分配存储空间吗,及即使不创建对象
//
还有补充一点,在第三行代码中,由于是新分配了一个空间,第一二条代码相当于a1指向原来a指向的空间,然后后来a又指向了一个新的内存,在这个时候,a指向了两个存储空间,教程上说a指向原来的空间这就作废了,然后这时,a1指向了两个空间,
教程上说这时a1指向了原来a指向的空间,这里我就不明白了,为什么,
还望各位指教

  • 写回答

5条回答

  • threenewbee 2016-04-17 15:44
    关注

    int i = 3;
    i = 4; //为什么这里不写int?能明白么?因为i已经定义了。

    或者说int i = 3;其实是如下两行
    int i; //在此之前不知道什么是i,需要定义
    i = 3;//赋值

    用了new都是分配了空间。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥15 python天天向上类似问题,但没有清零
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 C#调用python代码(python带有库)
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?