类和对象系列教材 (一)- 什么是Java中的引用?

更多详细内容请点击这里,注册获取

引用的概念,如果一个变量的类型是 类类型,而非基本类型,那么该变量又叫做引用。

步骤1:引用和指向
步骤2:多个引用,一个对象
步骤3:一个引用,多个对象

步骤 1 : 引用和指向

new Hero();

代表创建了一个Hero对象
但是也仅仅是创建了一个对象,没有办法访问它
为了访问这个对象,会使用引用来代表这个对象

Hero h = new Hero();

h这个变量是Hero类型,又叫做引用
=的意思指的h这个引用代表右侧创建的对象
“代表” 在面向对象里,又叫做“指向”

public class Hero {String name; //姓名float hp; //血量float armor; //护甲int moveSpeed; //移动速度public static void main(String[] args) {//创建一个对象new Hero();//使用一个引用来指向这个对象Hero h = new Hero();}
}

步骤 2 : 多个引用,一个对象

引用有多个,但是对象只有一个。
在这个例子里,所有引用都指向了同一个对象。
对象就像 “房产”, 引用就像"房产证"
房产证的复印件可以有多张,但是真正的"房产" 只有这么一处

public class Hero {String name; //姓名float hp; //血量float armor; //护甲int moveSpeed; //移动速度public static void main(String[] args) {//使用一个引用来指向这个对象Hero h1 = new Hero();Hero h2 = h1;  //h2指向h1所指向的对象Hero h3 = h1;Hero h4 = h1;Hero h5 = h4;//h1,h2,h3,h4,h5 五个引用,都指向同一个对象}
}

步骤 3 : 一个引用,多个对象

第8行,引用garen指向新创建的对象(对象1)
第9行,同一个引用garen指向新创建的对象(对象2)
这个时候,对象1,就没有任何引用指向了
换句话说,就没有任何手段控制和访问该对象,那么该对象就变得没有意义。

package charactor;
public class Hero {public String name;protected float hp;public static void main(String[] args) {Hero garen =  new Hero();garen =  new Hero();}
}

更多详细内容请点击这里

类和对象系列教材 (一)- 什么是Java中的引用?相关推荐

  1. java class和this_类和对象系列教材 (五)- Java 中的this 是什么意思?

    4 个答案 Vinson爱学习 答案时间:2020-10-20 充分非必要条件,这样好理解一点吗?多参包含少参 babab 答案时间:2020-10-19 public MyHero(String n ...

  2. 面向对象系列教材 (一)- Java中的类和对象

    面向对象系列教材 (一)- Java中的类和对象 本章节会引入面向对象的基本概念 (但是不会深入展开,仅仅是引入. 深入的学习会在后续的类和对象以及接口与继承 中展开) 相信你肯定玩过DOTA或者LO ...

  3. 接口与继承系列教材 (十)- Java 内部类详解

    接口与继承系列教材 (十)- Java 内部类详解 内部类分为四种: 非静态内部类 静态内部类 匿名类 本地类 步骤1:非静态内部类 步骤2:静态内部类 步骤3:匿名类 步骤4:本地类 步骤5:在匿名 ...

  4. fileinputstream自定义类序列化和反序列化_Rest Assured篇:Java中的序列化和反序列化...

    点击上方蓝字设为星标 每天傍晚伴你一起成长! Java 中的序列化和反序列化是一个重要的编程概念.它适用于所有主要的编程语言.在本章中,我们将尝试在Java语言的上下文中理解此概念.在本章的最后,我们 ...

  5. [转载] Java中如何引用另一个类里的集合_Java工程师面试题整理

    参考链接: 在Java中将预定义的类名用作类或变量名 花了一星期把学过的都整理一遍 尽量易懂,从基础到框架 最新版大厂面经汇总出炉,持续更新中 汇总完了上传网盘,设计到后端架构师的一切知识 如果没更新 ...

  6. C++_类和对象_封装_访问权限_C++中struct和class的区别---C++语言工作笔记037

    然后我们再来看c++中的访问权限控制,其实这个跟java中的很像 可以看到有3个,public 是类内类外都可以访问 protected 是保护权限,在类内可以访问,但是在类外不行.  这个在子类的时 ...

  7. 夯实Java基础系列11:深入理解Java中的回调机制

    本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...

  8. Java中如何引用另一个类里的集合_【18期】Java序列化与反序列化三连问:是什么?为什么要?如何做?...

    Java序列化与反序列化是什么? Java序列化是指把Java对象转换为字节序列的过程,而Java反序列化是指把字节序列恢复为Java对象的过程: 序列化:对象序列化的最主要的用处就是在传递和保存对象 ...

  9. java calendar类_2020 年,你还在使用 Java 中的 SimpleDateFormat 吗?

    今天我和大家一起聊一聊SimpleDateFormat ,这都2020年了,怎么还在用SimpleDateFormat ? 其实,作为一名Java 程序员,我们会经常在编程时候和时间打交道,比如要把某 ...

最新文章

  1. TensorFlow实现多层感知机MINIST分类
  2. 科研指导:机器学习与自然语言处理
  3. 学英语不必太在意单词
  4. JVM中OutOFMemory和StackOverflowError异常代码
  5. NET问答:什么场景下应该选择 struct 而不是 class ?
  6. 元旦海报设计素材|节日气氛PNG元素,满满中国风
  7. ih5怎么切换下一个页面_区块链是下一个风口?那PPT该怎么做?
  8. python12_Python 12 基础知识
  9. 【BZOJ 4516】生成魔咒
  10. Notepad2 v4.22.03 (r4130) 轻量级文本编辑器。可替换系统记事本
  11. pspice仿真笔记——spice模型转化
  12. 樽海鞘群算法原理详解
  13. 华为设备无线环境中的Portal认证
  14. indexOf 用法总结
  15. 湘大学生住宿物业管理情况调查(转自《文心报》)
  16. XMUTOJ-默罕默德的炸弹
  17. flstudio软件怎么设置中文语言切换?
  18. java浅谈线程安全之锁
  19. php自定义函数数学计算,PHP基于自定义函数生成笛卡尔积的方法示例
  20. 字符迷阵[网易题目]

热门文章

  1. 南京林业计算机技术883,2018年南京林业大学信息科学技术学院883电工及电子技术之电工学-电工技术考研核心题库...
  2. 如何成为一个内心强大的人
  3. php utorrent,uTorrent下载官方版
  4. android 通讯录界面设计带字母,android仿微信联系人索引列表功能
  5. Acrel-6000电气火灾监控系统在昆明长水国际机场的应用-安科瑞华楠
  6. Word文档怎么翻译成中文?学会这几种方法你也能翻译文档
  7. iOS物理碰撞、唱吧音频处理、仿淘宝联动效果等源码 1
  8. 题解 【提高】小 X 学游泳(swim)
  9. python中的scrapy爬虫_Python 爬虫之Scrapy《中》
  10. 计算机绘图心得简短,cad画图心得体会(精选3篇)