java中的五种引用数据类型(对象类型)
注意,不是JVM中的四种引用类型:强、软、弱、虚引用。
详见我的另一篇文章《JVM中的四种引用类型》
Java有 5种引用类型(对象类型):类 接口 数组 枚举 标注
引用类型:底层结构和基本类型差别较大
JVM的内存空间:
(1). Heap 堆空间:分配对象 new Student()
(2). Stack 栈空间:临时变量 Student stu
(3).Code 代码区 :类的定义,静态资源 Student.class
Student stu = new Student(); //new 在内存的堆空间创建对象
stu.study(); //把对象的地址赋给stu引用变量
上例实现步骤:
a.JVM加载Student.class 到Code区
b.new Student()在堆空间分配空间并创建一个Student实例
c.将此实例的地址赋值给引用stu, 栈空间
基本数据类类型存的是数值本身,而引用类型变量在内存放的是数据的引用,并不是数据的本身,引用类型变量是以间接方式去获取数据。引用类型变量都属于对象类型,如:数组、类、字符串等都属于引用类型变量。所以,引用类型变量里面存放的是数据的地址。
对于 引用变量的比较一般是有两个不同的方法
1)比较两个变量是不是指向同一个对象,此时,需要比较 a b 中的地址是不是执行同一个值 ,因为此时比较的是 a b 中的地址值,要用 ==
2)比较 a b 分别对应不同的对象,此时 a b 中的地址 一定是不同的了 ,此时比较的是对象的值 ,因此这里的比较只能用equals
java中的五种引用数据类型(对象类型)相关推荐
- Java 中的四种引用
垃圾收集器与内存分配策略参考目录: 1.判断Java 对象实例是否死亡 2. Java 中的四种引用 3.垃圾收集算法 4. Java9中的GC 调优 5.内存分配与回收策略 在进行垃圾回收之前,虚拟 ...
- java中的五种排序方法_用Java排序的五种有用方法
java中的五种排序方法 Java排序快速概述: 正常的列表: private static List VEGETABLES = Arrays.asList("apple", &q ...
- Java 中的四种引用及垃圾回收策略
Java 中有四种引用:强引用.软引用.弱引用.虚引用: 其主要区别在于垃圾回收时是否进行回收: 1.强引用 使用最普遍的引用.如果一个对象具有强引用,那就 类似于必不可少的生活用品,垃圾回收器绝不会 ...
- Java中的四种引用方式的区别
强引用.软引用.弱引用.虚引用的概念 ps:我更新了.....我真的更新了.....因为博客园不支持MarkDown,而且取了一个很low的用户名,所以不用了..... 强引用(StrongRefer ...
- Java中的四种引用
相关概念 java有4种引用,可分为强引用(NormalReference).软引用(SoftReference).弱引用(WeakReference).虚引用(phantomReference) g ...
- Java中的八种基本数据类型
Java中主要有八种基本数据类型:byte.short.int.long.float.double.boolean.char. 各种数据类型作用: 1.byte: 8位.有符号的以二进制补码表示的整数 ...
- java中的八种原始数据类型
java中的的原始数据类型可分为4大类:整数型(byte,short,int,long),浮点型(float,double)布尔型(boolean)字符型(char). 首先我们先要知道它们的各自取值 ...
- Java 中Map五种取值方式
map的主要作用是什么? 可以通过创建一个map的实现类 来存放 数据 值 和值的描述 也可以通过描述去取得数据 将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值.此接 ...
- java单例模式理解_快速理解Java中的五种单例模式
解法一:只适合单线程环境(不好) packagetest;/***@authorxiaoping **/ public classSingleton {private static Singleton ...
最新文章
- Python基础23_os,sys,序列化,pickle,json
- python高阶函数闭包装饰器_Python_基础_(装饰器,*args,**kwargs,高阶函数,函数闭包,函数嵌套)...
- 高并发和分布式中的幂等处理
- oracle查看被锁的行,查找被锁的表到底是哪一行被锁定了
- 开源中国 OsChina Android 客户端源码分析(7)二维码生成对话框
- jetty嵌入式容器_嵌入式Jetty和Apache CXF:借助Spring Security来保护REST服务
- 计算机网络学习笔记-02-标准化工作以及相关组织
- Java-Hashmap
- 【Java】java中 ==,equals,hashcode
- 服务器安装lnmp的时候出现client_loop: send disconnect: Connection reset by peer
- 删除Github仓库某一次commit信息/历史
- 【收集】个人认为比较实用的电脑工具软件(附带安装包下载)
- ffmpeg中的pcm格式
- 图像处理中的一阶偏导数和二阶偏导数
- NCRE-嵌入式系统开发工程师-计算机组成与接口知识整理
- 在线教育的鲶鱼“肥瘦不均”
- 如何在微信中取消已授权的第三方应用APP
- 地图选择区域遮罩层自定义控件实现
- 单机100万连接,每秒10万次请求服务端的设计与实现(三) - 变量共享、超线程与高性能队列
- springcloud之简介