指针变量和引用变量的区别_Java基础之引用变量

在开始讲Java引用变量前,我们先聊聊Java对象首先我们先构造一个Java对象,此对象包含两个属性

471376b228d49fbb4c3cd93d4c473ae4.png

Java对象

其中,需要注意的是Java对象的构造方法,Java构造方法的特点为:

1. 方法名必须和类名相同

2. 可以有多个参数或者没有参数(无参构造器)

3. 没有任何返回值,包括void

4. 默认返回类型就是对象类型本身

有趣的是,如果为构造方法定义了返回值类型或使用void声明构造方法没有返回值,编译时编译器不会报错,因为Java编译器会把这个所谓的构造方法当成普通方法来处理

然后我们在main方法中,创建一个Java对象

f1454ebefda2e26407e24f93f1b62139.png

main方法为程序入口

敲黑板进入本节重点:

声明两个Book的引用变量并创建Book对象,然后将Book对象赋值给引用变量

现有两个Book对象生活在堆上

Book a = new Book();

Book b = new Book();

d835d965cc4c760710cc6056f66d4839.png

声明一个引用对象Book c,但不创建新的Book对象而将引用变量b的值赋值给变量c。代表将变量b的值拷贝一份给变量c。此时对象数依旧为2 引用数为3 因2个引用变量指向一个对象

cb08f03945a182e5a17fa362748cd9cd.png

如果将引用变量a的值拷贝一份赋值给c

c=a 引用变量的数量依旧是3 对象数为2 a和c指向的同一个Book对象1

cb017889fd670c6abf42d62b508eb079.png

Java对象是存在于堆空间,如果对象未被引用则将被垃圾收集器(GC)回收

3034e1f18bb2bea7068c7e58546386d4.png

技术无涯,笔者的水平有限 欢迎大家指点 下节讲对象的行为

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值