`

Java对象引用类型

阅读更多
Java对象的引用类型分为强引用、软引用、弱引用和虚应用
强引用:
     强引用就是普通的Java对象的创建,例如Object obj=new Object();其中obj就是一个强引用

其余三种引用就是强引用的再次引用,这个再次引用必须是在强引用为null的情况下才有意义,因为有强引用的话直接使用强引用,干嘛要费尽周折使用别的引用呢。

软引用:
     除非堆内存不足,否则垃圾回收器不会回收软引用所指的Java对象占用的堆内存。

弱引用:
     垃圾回收器执行的时候回收在本次垃圾回收前、上次垃圾回收后创建的弱引用,明白?

很显然:
     强引用、软引用、弱引用都可以作为存放在内存中缓存,强引用缓存不会受垃圾回收期影响,长期存在;软引用缓存受垃圾回收器影响,在内存用尽之前;弱引用缓存在下一次垃圾回收之前有效。

虚引用:
     主要监控垃圾回收器对该对象的回收情况。
0
3
分享到:
评论

相关推荐

    java引用 对象 属性等数据类型知识

    java学习相关引用 对象 属性等数据类型知识

    值类型和引用类型的区别

    将一个值类型变量 装箱成一个引用类型变量,首先会在托管堆上为新的引用类型变量分配内存空间,然后将值类型变量拷贝到托管堆上新分配的对象内存中,最后返回新分配的对象内 存地址。装箱操作是可逆的,所以还有拆箱...

    Java虚拟机(四)——Java引用对象4种类型

    Java的4种引用类型: 他们分别是强引用(StrongReference),软引用(SoftReference),弱引用(WeakReference)以及PhantomReference(虚引用),他们被 GC回收的可能性从小到大排列。 强引用(StrongReference) 只要强引用...

    【Java基础】判断引用类型相等

    但是,判断引用类型的变量是否相等,==表示“引用是否相等”,或者说,是否指向同一个对象。例如,下面的两个String类型,它们的内容是相同的,但是,分别指向不同的对象,用==判断,结果为false: public class ...

    Java 接口.pdf Java面向对象设计 - Java接口 什么是接口? Java中的接口定义了一个引用类型来创建抽象概念

    Java中的接口定义了一个引用类型来创建抽象概念。接口由类实现以提供概念的实现。 在Java 8之前,一个接口只能包含抽象方法。 Java 8允许接口具有实现的静态和默认方法。 接口通过抽象概念定义不相关类之间的关系...

    Java中int与integer的区别(基本数据类型与引用数据类型)

     基本数据类型:变量名指向具体的数值引用数据类型:变量名指向存数据对象的内存地址,即变量名指向hash值 2、从内存构建方面来说  基本数据类型:变量在声明之后java就会立刻分配给他内存空间  引用数据类型:

    精通 Hibernate:Java 对象持久化技术详解(第2版).part2

    第2章 Java对象持久化技术概述  2.1 直接通过JDBC API来持久化实体域对象  2.2 ORM简介  2.2.1 对象-关系映射的概念  2.2.2 ORM中间件的基本使用方法  2.2.3 常用的ORM中间件  2.3 实体域对象的其他持久化模式...

    JAVA面向对象详细资料

    Java面向对象 1 1 学习方法与要求 1 2 面向对象语言与面向过程语言的区别 7 3 面向对象?什么对象? 8 4 什么是类? 9 5 如何创建一个类Class? 10 6 如何使用类创建对象 10 7 引用与实例 11 8 实例属性与实例方法 ...

    [Java] 对象类型转换和运算符 instanceof 学习笔记 [#子类转父类 #父类转子类 #对象和引用的区别]

      在需要将一个继承链下把一个类的对象转换为另一个类的对象(注意:这里强调转换的是对象而不是类),更确切地说其实应该是引用类型和对象类型不一致的时候考虑到对象类型转换 这里拓展一下引用和对象的区别 对象...

    浅谈Java中的对象和对象引用

    在Java中,有一组名词经常一起出现,它们是“对象和对象引用”,很多朋友在初学Java的时候可能经常会混淆这2个概念,觉得它们是一回事,事实上则不然。我们来一起了解一下对象和对象引用之间的区别和联系。  1....

    JAVA基础——JAVA的五种引用类型及引用队列

    JAVA 的五种引用类型及引用队列 ​ 在介绍 JAVA 的五种引用之前,先介绍一下什么是引用,以及引用和对象之间的关系 什么是引用 ​ 众所周知,JAVA 是一种面向对象的语言,在 JAVA 程序运行时,对象是存储在堆内存...

    史上最全Java面试题目大集合

    Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类booleanBoolean charCharacter byteByte...

    Java数据类型精解

    ********Shenkxiao Resources******** ...资源:Java数据类型精解 ... 1.2 对象数据类型 1.3 引用数据类型 1.4 数组数据类型 上传理由:基础文档共享,对Java初学者有很大的帮助 ***********************************

    全面解析Java中的引用类型

    在Java中对象以引用来指向JVM的内存区块,这里我们总结了强引用、软引用、弱引用和假象引用(幽灵引用),下面就具体来全面解析Java中的引用类型:

    java笔试题 大学生应聘

    Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类,booleanBoolean,charCharacter,byte...

    JAVA8 面向对象编程免费视频

    一、类与对象 03001_面向对象简介 本课程主要讲解了面向对象与面向过程... 本课程主要讲解在Java中类的定义格式以及对象的产生格式,同时讲解了引用数据类型的内存分配与空指向问题的产生原因。 ....................

    Java面向对象程序设计笔记

    引用数据类型 9 5. 变量 9 6. 运算符 9 7. 数据的传输 9 8. 程序的逻辑控制语句 9 9. 数组 9 第四章 JavaOO程序设计 9 1.Java面向对象编程的特点 9 2.继承 10 2.1继承 10 2.2.Super关键字: 10 2.3....

    JAVA程序员面试宝典

    3、int 和 Integer 有什么区别 Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。原始类型封装类boolean...

    java的传值与传引用详解

     Java 是传值还是传引用,问题主要出在对象的传递上,因为 Java 中简单类型没有引用。既然争论中提到了引用这个东西,为了搞清楚这个问题,我们必须要知道引用是什么。  简单的说,引用其实就像是一个对象的名字...

Global site tag (gtag.js) - Google Analytics