原创 centos安裝git時出錯提示make[1]: *** [perl.mak] Error 2

centos安裝git時出錯提示make[1]: *** [perl.mak] Error 2 解決: yum install perl-ExtUtils-MakeMaker package

原创 模板方法模式-Template Method

1. 豆漿製作問題 編寫製作豆漿的程序,說明如下:: 製作豆漿的流程 選材—>添加配料—>浸泡—>放到豆漿機打碎 通過添加不同的配料,可以製作出不同口味的豆漿 選材、浸泡和放到豆漿機打碎這幾個步驟對於製作每種口味的豆漿都是一樣的

原创 linux sz rz的安裝命令

yum install -y lrzsz

原创 java 查看只有main函數的類,啓動了幾個線程

public class OnlyMain { public static void main( String[] args ) { //Java 虛擬機線程系統的管理接口 ThreadMX

原创 工廠方法模式-factory method

1.工廠方法模式定義 定義一個用於創建對象的接口,讓子類決定實例化哪一個類,Factory Method 使一個類的實例延遲到其子類。 工廠方法模式的解決思路: 那就是不解決,採取無爲而治的方式; 2.工廠方法模式的結構和說明 工

原创 單例模式雙重檢查加鎖爲什麼需要加上volatile關鍵字?

public class DoubleCheckedLocking { private static DoubleCheckedLocking instance; public static DoubleChec

原创 狀態模式-state

1、實現在線投票 需求: 在線投票,要實現控制統一用戶只能頭投一票,如果一個用戶反覆投票,而且投票次數超過5次,則判定爲惡意刷票,要取消該用戶投票的資格,當然同時也要取消他所有的投票;如果一個用戶的投票次數超過8次,將進入黑名單,

原创 策略模式- Strategy

1、編寫鴨子項目,具體要求如下: 有各種鴨子(比如 野鴨、北京鴨、水鴨等, 鴨子有各種行爲,比如 叫、飛行等) 顯示鴨子的信息 2 傳統方案解決鴨子問題的分析和代碼實現 傳統的設計方案(類圖) 2) 代碼實現 抽

原创 命令模式-Command

1. 智能生活項目需求 看一個具體的需求 我們買了一套智能家電,有照明燈、風扇、冰箱、洗衣機,我們只要在手機上安裝 app 就可以控制對這些家電工作。 這些智能家電來自不同的廠家,我們不想針對每一種家電都安裝一個 App,分別

原创 java虛擬機內存分配策略

優先分配到eden 大對象直接分配到老年代 長期存活的對象分配到老年代 空間分配擔保 動態對象年齡判斷

原创 java 垃圾回收可以作爲GCRoots的對象

虛擬機棧(局部變量表) 方法區中的類屬性所引用的對象 方法區中常量所引用的對象 本地方法棧中引用的對象

原创 享元模式-FlyWeight

1. 展示網站項目需求 小型的外包項目,給客戶 A 做一個產品展示網站,客戶 A 的朋友感覺效果不錯,也希望做這樣的產品展示網 站,但是要求都有些不同: 有客戶要求以新聞的形式發佈 有客戶人要求以博客的形式發佈 有客戶希望以微

原创 備忘錄模式-Memento

1、場景 考慮這樣一個應用,功能是,模擬運行鍼對某個具體問題 的多個解決方案,記錄運行過程的各種數據,在模擬運行完成之後,方便對這多個解決 方案進行比較的評價,從而選定最優的解決方案。 由於都是解決同一個具體的問題。這多個解決方案

原创 中介者模式-Mediator

1. 智能家居項目 智能家居項目: 智能家庭包括各種設備,鬧鐘、咖啡機、電視機、窗簾 等 主人要看電視時,各個設備可以協同工作,自動完成看電視的準備工作,比如流程爲:鬧鈴響起->咖啡機開始 做咖啡->窗簾自動落下->電視機開始

原创 組合模式-Composite

1.看一個學校院系展示需求 編寫程序展示一個學校院系結構:需求是這樣,要在一個頁面中展示出學校的院系組成,一個學校有多個學院,一個學院有多個系。如圖: 2 傳統方案解決學校院系展示(類圖) 3. 傳統方案解決學校院系展示存在