国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > java基础 > 静态内部类在java的单例用法

静态内部类在java的单例用法

头像

小妮浅浅

2021-01-20 11:31:413747浏览 · 0收藏 · 0评论

我们对于线程的应用时,一直都在寻找能够安全运行的方法。而java内部类中,有一种方法就可以实现单例的安全,那就是静态内部类的存在。在声明上有static的出现,对于外部类的引用方面比较不容易出现问题。下面我们就静态内部类的概念、特点与普通内部类区别逐个介绍,然后展示创建单例线程的用法实例。

1.概念

又叫嵌套类,在成员内部类前面加了static。声明为static的类不会持有外部类的引用,可以通过软引用的方式保存外部类的了引用,只有静态内部类不可能造成内存泄漏。

2.特点

1)静态内部类中可以声明静态变量,非静态内部类中不可以。

2)静态内部类不可以使用外部类的非静态成员变量。

3)创建静态内部类对象,不需要其外部类对象引用。

3.和普通内部类的区别

1)普通内部类对象隐式地保存了一个引用,指向创建它的外部类对象。而嵌套类创建对象,并不需要外部类对象。

2)不能从嵌套类的对象中访问非静态的外部类对象。

3)普通内部类不能有static数据和static字段,也不能包含嵌套类,但是嵌套类可以包含所有这些东西。

4.实例

静态内部类一个很好的用途是,用来创建线程安全的单例模式:

public class Singleton {  
    private static class SingletonHolder {  
        private static final Singleton INSTANCE = new Singleton();  
    }  
    private Singleton (){}  
    public static final Singleton getInstance() {  
        return SingletonHolder.INSTANCE; 
    }  
}

以上就是静态内部类在java的单例用法,可以说由于静态内部类本身用法的特性,保证了线程创建的安全。大家有线程创建需求时,可以选择静态内部的方法。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

妈妈出轨了免费观看电视剧全集| 录像狗配女人| 主人~我错了请把它关掉歌词 | 扒开女人内裤猛进猛出流出白液| 美国禁忌6 结局| 三更2饺子截取一小段| 黑人与女人猛交XxXX| 老师穿黑色双开真丝旗袍如何穿芭.| 女性扒开大腿内侧小肚子痒| 孔夫子旧书网| 嫂嫂宝库免费观看电视剧全部| 游泳教学视频| 水手服| 小丹让我尝尝你的味道是什么歌啊| 老公拿狗给我配| 《借种生子》电影免费观看| 一家五口混乱的家庭怎么形容 | 我有一个朋友| 一路向西在线| 国产精品国内自产拍在线播放| 0.洞洞饿了1-36集全免费| 坤坤寒入桃子里电视剧免费看| 外国大片又大又好看的PPT| 麻花MV在线看免费观看电视剧| 《淫海春潮》法国1980| 敌伦交换小敏小静小雅第1集| 免费观看萝卜大全电视剧韩剧| 大叔与妹妹免费观看电视剧高清| 55影院最新免费看电视剧| 少女尖叫之夜1-4集免费| 《军妓肉体》在线观看| 美国禁忌2在线观看电视剧| 三个老师轮流给学生布置作业| 日本妈妈DNA与儿子DNA一样..| 女子蹲坑排尿全过程| 教室停电 挺进她体内H| 免费观看已满十八岁电视剧动漫 | 官场艳妇的呻吟声| 朝国年经的继3| 女子赤身跳钢管舞视频| 白带内裤拉丝尿液