單例設計模式-枚舉

枚舉

枚舉應用實例

代碼演示

package com.atguigu.principle.singleton.type08;/**
*/
public class SingletonTest08 {public static void main(String[] args) {Singleton instance = Singleton.INSTANCE;Singleton instance2 = Singleton.INSTANCE;System.out.println(instance == instance2);System.out.println(instance.hashCode());System.out.println(instance2.hashCode());instance.sayOK();}}// 使用枚舉 ,可以實現單例, 推薦使用
enum Singleton{INSTANCE;public void sayOK() {System.out.println("ok~");}
}

優缺點說明:

  1. 這借助jdk1.5天假的枚舉來實現單例模式. 不僅能夠避免多線程同步問題,而且還能夠防止反序列化重新創建新的對象

  2. 這種方式 是 Effective Java 作者 Josh Bloch 提倡的方式

  3. 結論: 推薦使用

更多

參考:你知道嗎?枚舉單例模式是世界上最好的單例模式!!!

天馬行空

如果不考慮前輪打滑,前驅是最好的驅動形式

如果不考慮鋼帶打滑,CVT是最好的變速箱

更多:http://victorfengming.gitee.io/design_pattern/

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/455116.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/455116.shtml
英文地址,請注明出處:http://en.pswp.cn/news/455116.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

拋物線交點式公式_拋物線交點式

以下是范文網www zhuodaoren com 分享的6 已知拋物線與軸兩交點在軸同側,它們的距離的平方等于,則的值為( ),希望能幫助到大家!(一)6 已知拋物線與軸兩交點在軸同側,它們的距離的平方等于,則的值為( )函數與一元二次方…

學習的動力

要有自學的意識,這是一個知識不斷更新、不斷涌現的時代,大學里的很多知識是過時的,就算入校時是熱門行業的但很可能四年后畢業找工作時已經變成了夕陽產業,學習是一種能力,但首先是一種態度,一個人想在快速…

java面向對象之父類的引用指向子類的對象

1 package Text; 2 3 public class Job { 4 public void dowork(){ 5 6 } 7 } 1 package Text; 2 3 public class Luosidao extends Job{ 4 public void dowork(){ 5 System.out.println("螺絲刀擰螺絲。。。"); 6 } 7 } 1 packa…

單例模式在JDK應用的源碼分析

單例模式在JDK應用的源碼分析 單例模式在jdk中的源碼分析 在我們JDK中,java.lang.Runtime就是經典的單例模式(惡漢式) 代碼分析Debug源碼代碼說明 public class Runtime {private static Runtime currentRuntime new Runtime();/*** Returns the runtime object associate…

lisp語言cond和if套用_LISP - 決策

決策結構需要程序員指定一個或多個條件由程序進行評估或測試,以及要執行的語句或語句如果條件被確定為true,如果條件被確定為false那么選擇要執行其他語句。下面是在大多數編程語言中一個典型的決策結構的一般形式為:LISP提供了以下類型的決策…

H264基本概念之 宏塊、片和片組

這幾個概念對比音頻信號處理可是全新的,下面簡要介紹一下定義和作用: 1、宏塊(Macro Block):一個編碼圖像首先要劃分成多個塊(4x4 像素)才能進行處理,顯然宏塊應該是整數個塊組成&…

CodeVS 1044 攔截導彈(DP)

題目大意&#xff1a; http://codevs.cn/problem/1044/ 第一問題就是求序列的最長遞減數列的長度&#xff0c;第二問就是求數列的最長遞增序列的長度。 代碼&#xff1a; #include <iostream>using namespace std;int arr[30] {0}; int dp[30] {0}; int mp[30] {0};in…

鏈表(Linked List)之單鏈表

原文地址:傳送門 鏈表(Linked List)介紹 鏈表是有序的列表&#xff0c;但是它在內存中是存儲如下 小結: 鏈表是以節點的方式來存儲,是鏈式存儲 每個節點包含 data 域&#xff0c; next 域&#xff1a;指向下一個節點. 如圖&#xff1a;發現鏈表的各個節點不一定是連續存儲…

有字符csv文件導入matlab_Matlab:如何讀取CSV文件以及如何讀取帶有字符串數據項的CSV文件...

CSV&#xff0c;逗號分開的文件&#xff0c;如果能快速的讀取這些文件中的數據&#xff0c;無疑會幫助我們解決很多問題。1、 只有數據的CSV文件&#xff0c;CSV file that includes only numbers.As an example, create a text file, named as data.csv if you prefer, which …

xchg_mb_border()

顧名思義&#xff0c; xchg_mb_border() 交換 MB 邊界的像素。閱讀代碼可知&#xff0c;交換雙方為邊界緩存 (left_border,top_borders) 與重建圖象中的相應數據。其中 xchg 參數是否為 1 決定&#xff0c;在從邊界緩存賦值到重建圖象的同時&#xff0c;是否保存重建圖象的數據…

Introduction to the Optimizer --cbo

http://docs.oracle.com/cd/B10500_01/server.920/a96533/optimops.htm

統計字符串中某個字出現的次數

package ch11;import java.util.Scanner;/** * Created by liwenj on 2017/7/21. */public class T6 { public static void main(String[] args) { String w "我愛你中國&#xff0c;我愛你故鄉"; String a "愛"; int k0; …

jedispool redis哨兵_通過java哨兵JedisSentinelPool代碼示例連接對配置的redis哨兵主從模式進行測試驗證...

一、前言本文章通過關于java的jedis(2.6.0)的redis客戶端連接驅動包&#xff0c;對配置的redis哨兵主從讀寫模式配置進行示例代碼驗證&#xff0c;詳細參見具體配置步驟&示例代碼說明部分。二、配置步驟1. 安裝redis(參考其他文章教程),并配置主從模式(參考其他相關文章&am…

鏈表(Linked List)之雙向鏈表

雙向鏈表應用實例 使用帶head頭的雙向鏈表實現 –水滸英雄排行榜 管理單向鏈表的缺點分析: 單向鏈表&#xff0c;查找的方向只能是一個方向&#xff0c;而雙向鏈表可以向前或者向后查找。 單向鏈表不能自我刪除&#xff0c;需要靠輔助節點 &#xff0c;而雙向鏈表&#xff…

H264 解碼耗時分析

在數字基帶處理器上代碼的最佳放置 美國模擬器件公司 Jose Fridman   在手機等嵌入式系統中&#xff0c;除了處理器執行時間外&#xff0c;最重要的資源就是設備總線和存儲器接口。本文將介紹一種在使用指令高速緩存時其帶寬消耗的基礎上&#xff0c;統計分析高速緩存所采用…

CentOS 7 使用iptables防火墻

# 停止firewalld服務 systemctl stop firewalld systemctl mask firewalld # 安裝iptables-services yum install iptables-services Enable the service at boot-time: # 啟動iptables服務 systemctl enable iptables # 管理iptables systemctl [stop|start|restart] ip…

Linux命令之useradd和userdel(添加、刪除用戶)

一、【useradd】&#xff1a;添加用戶命令 1.作用useradd或adduser命令用來建立用戶帳號和創建用戶的起始目錄&#xff0c;使用權限是超級用戶。 2.格式 useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name 3.主…

鏈表(Linked List)之環形鏈表

原文地址:傳送門 單向環形鏈表應用場景 Josephu(約瑟夫、約瑟夫環) 問題 Josephu 問題為&#xff1a;設編號為1&#xff0c;2&#xff0c;… n的n個人圍坐一圈&#xff0c;約定編號為k&#xff08;1<k<n&#xff09;的人從1開始報數&#xff0c;數到m 的那個人出列&…

springboot 單測加入參數_spring-boot-單元測試參數數

簡單案例RunWith(Parameterized.class)public class ParameterTest {// 2.聲明變量存放預期值和測試數據private String firstName;private String lastName;//3.聲明一個返回值 為Collection的公共靜態方法&#xff0c;并使用Parameters進行修飾Parameterized.Parameterspubli…

H.264/AVC 標準中CAVLC 和CABAC 熵編碼算法研究

http://www.paper.edu.cn/index.php/default/releasepaper/downPaper/200903-146