当前位置:首页 > JAVA > 正文内容

java学习引用类型之强引用

高老师2年前 (2023-07-14)JAVA482

在Java中,强引用(Strong Reference)是最常见、默认的引用类型。它是一种正常的对象引用,如果一个对象具有强引用与之关联,那么即使内存紧张,垃圾回收器也不会回收该对象。

下面是使用强引用的示例:

public class StrongReferenceExample {
    public static void main(String[] args) {
        // 创建一个字符串对象,并用强引用进行关联
        String str = new String("Hello World");

        // 显示强引用的值
        System.out.println("Strong Reference: " + str);
    }
}

在这个示例中,我们创建了一个字符串对象,并使用强引用 str 与之关联。强引用可以通过变量 str 直接访问对象,而且只要 str 存在,垃圾回收器就不会回收被引用的字符串对象。

强引用的特点包括:

  • 强引用可以直接访问对象。
  • 强引用不会在内存充足的情况下被垃圾回收器回收。
  • 强引用可以避免对象被提前回收,但也可能导致内存泄漏问题。

需要注意的是,当一个对象不再被引用时,即没有任何强引用指向它时,它将成为垃圾回收的候选对象。然后,垃圾回收器将根据需要来确定何时回收这些对象以释放内存。

强引用是Java中最常用的引用类型,大多数情况下,我们使用的都是强引用。

强引用类型只有显式地设置o为null,或超出对象的生命周期范围(如非全局变量),则gc认为该对象不存在引用,这时就可以回收这个对象。

扫描二维码推送至手机访问。

版权声明:本文由高久峰个人博客发布,如需转载请注明出处。

本文链接:https://blog.20230611.cn/post/457.html

分享给朋友:

“java学习引用类型之强引用” 的相关文章

java一个类可以有多个构造方法

java一个类可以有多个构造方法

java一个类可以有多个构造方法,根据传参类型和个数来匹配执行哪个构造方法。public class Member {     public Member(){      ...

java增强型for循环

java增强型for循环

Java5 引入了一种主要用于数组的增强型 for 循环,类似js中的for inpublic class Member {     public static void main(String[]&...

java String 类 ,java 字符串类,java创建字符串,java获取字符串长度,java连接字符串,java格式化字符串

java String 类 ,java 字符串类,java创建字符串,java获取字符串长度,java连接字符串,java格式化字符串

在java中字符串属于对象,刚开始我就疑惑为什么int char等类型都是小写,结果String是大写,java太反人类,后来才知道String是对象。(1).java创建字符串String text = "net"; String tex...

java日期和时间

java日期和时间

(1).java获取当前日期时间Date date = new Date();  System.out.println(date.toString());输出Fri Jul 02 10:29:55 CST 2021(2).java获取时间戳秒/毫秒D...

java获取时间戳,java时间戳获取

java获取时间戳,java时间戳获取

System.out.println("当前时间戳(秒): " + System.currentTimeMillis()/1000); System.out.println("当前时间戳(毫秒): " +&nb...

java正则表达式判断字符串是否包含,java判断字符串是否包含

java正则表达式判断字符串是否包含,java判断字符串是否包含

pattern表示正则表达式,接收正则表达式作为参数例子:String content = "my name is gaojiufeng"; String pattern = "....