Time of Update: 2018-07-25
/**
Time of Update: 2018-07-25
這個模式的原理非常的簡單,請看下面的例子。 1. 類圖 2. Java實現代碼 package cn.edu.ynu.sei.defaultAdapter; /** * 介面A<br> * 這個介面有5個方法,f1~f5 * *
Time of Update: 2018-07-25
這裡以一個“指方為圓”的例子來說明適配器模式的原理和簡單應用,本例子來自《Java與模式》。 1. 類圖 2. Java實現代碼 package cn.edu.ynu.sei.adapter; /** * 球體介面<br> * * @author 88250 *
Time of Update: 2018-07-25
這次的執行個體講的是在一個果園中種有3種水果,勤勞的園丁負責照看它們,當有客戶需要水果的時候就給他們。 1. Factory 方法執行個體類圖 2. Java實現代碼 package cn.edu.ynu.sei.factoryMethod; /** * 果園園丁介面 * * @author 88
Time of Update: 2018-07-25
本次執行個體以擲骰子的例子展開。 1. 類圖 2. Java實現代碼 package cn.edu.ynu.sei.multiton; /** * 使用骰子的客戶 * * @author 88250 * @version 1.0.0, 2
Time of Update: 2018-07-25
下面了例子來自《Java與模式》。 假設有一個是用Java建造的電子雜誌系統,定期地向使用者的電子郵件信箱發送電子雜誌。使用者可以通過網頁訂閱,也可以通過網頁結束訂閱。當客戶開始訂閱時,系統發送一封電子郵件表示歡迎,當客戶結束訂閱時,系統發送一封電子郵件表示歡送。本例子就是這個系統負責發送“歡迎”和“歡送”郵件的模組。 1. 類圖 2. Java實現代碼 package cn.edu.ynu.sei.
Time of Update: 2018-07-25
本次執行個體繼續上次 Factory 方法 中的果園農場。這次,該農場公司引進塑料大棚技術,在大棚裡種植熱帶(Tropical)水果和蔬菜。 1. 抽象工廠執行個體類圖 2. Java實現代碼 package cn.edu.ynu.sei.abstractFactory; /** * 水果介面 * @author
Time of Update: 2018-07-25
本次執行個體介紹了單例設計模式裡最常見的兩個執行個體——餓漢單例與懶漢單例。 1. 類圖 2. Java實現代碼 package cn.edu.ynu.sei.singleton; /** * “餓漢式”的單例類 * * @author 88250 *
Time of Update: 2018-07-25
摘要 Image Recognition是目前很熱門的研究領域,涉及的知識很廣,包括資訊理論、模式識別、模糊數學、映像編碼、內容分類等等。本文僅對使用Java實現了一個簡單的映像文本二值處理,關於識別並未實現。 步驟 建立文本字元模板二值矩陣 對測試字元進行二值矩陣化處理 代碼 /*
Time of Update: 2018-07-25
用maven建立web項目後,src下只有resources,接下來想在src/main中再添加目錄名為java的源檔案夾(source folder)用於存放java代碼,但eclipse報出如下錯誤: Cannot nest 'tst/src/main/java' inside 'tst/src/'. To enable the nesting exclude main/' from 'tst/src/' 以上錯誤是提示你想要建立的source
Time of Update: 2018-07-25
在Java裡,這個模式主要與clone()方法密切相關。 1. 類圖 2. Java實現代碼 package cn.edu.ynu.sei.prototype; /** * 原始模型模式用戶端 * * @author 88250 * @version
Time of Update: 2018-07-25
這幾天正在學習設計模式,看完書,總得寫點簡單的執行個體吧:-) 所以呢,從今天開始認真寫點簡單的純設計模式實現的Java代碼,先比較淺顯地體會一下設計模式的思想。以便以後在實際項目中正確地使用它。 在這個例子中,ArtTracer的指責是根據客戶的要求繪製各種各樣的圖形;Shape介面是提供一些常用的繪圖操作,3個圖形類分別實現了它;繪圖異常時拋出BadShapeException。 1. 簡單工廠執行個體UML類圖 2.
Time of Update: 2018-07-25
java.util包中包含了一系列重要的集合類。本文將從分析源碼入手,深入研究一個集合類的內部結構,以及遍曆集合的迭代模式的源碼實現內幕。 下面我們先簡單討論一個根介面Collection,然後分析一個抽象類別AbstractList和它的對應Iterator介面,並仔細研究迭代子模式的實現原理。 本文討論的原始碼版本是JDK 1.4.2,因為JDK 1.5在java.util中使用了很多泛型代碼,為了簡化問題,所以我們還是討論1.4版本的代碼。 集合類的根介面Collection
Time of Update: 2018-07-25
執行: for (Iterator it = o.getSons().iterator(); it.hasNext();) { r = (KnowledgeNode) it.next();
Time of Update: 2018-07-25
import java.io.File;import java.io.FileOutputStream;import de.innosystec.unrar.Archive;import de.innosystec.unrar.rarfile.FileHeader;public class UnRARTools {public void unrar(File sourceRar, File destDir) throws Exception {Archive archive =
Time of Update: 2018-07-25
利用java.util.zip.ZipFile類,來解壓檔案。 可以解壓zip,jar,war,但無法解壓rar檔案。 import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import
Time of Update: 2018-07-25
現在有兩個類,它們名稱相同,但所在的package不同。 其結構如下圖所示: 兩個class A的代碼如下: package pka; public class A { public void printA(){ System.out.println("print:pka.A"); } } package pkb; public class A {
Time of Update: 2018-07-25
import javax.swing.*;import java.awt.*;import java.awt.event.*;/** *使java application產生托盤表徵圖的例子 *本代碼在JDK1.6上,Win2003平台上測試通過 *@author:NetJava.org */public class CreateTray{ /**建立單實列*/ public static
Time of Update: 2018-07-25
很明顯,JAVA中的系統托盤,如果要實現,重要的是兩個類,一個是SystemTray,而另一個是TrayIcon。需要為TrayIcon設定好圖片,它需要顯示的資訊以及右鍵點擊的PopupMenu.PopupMenu的使用很簡單,就是將需要的MenuItem添加入PopupMenu中。 以下是一段範例程式碼,用於表明系統托盤如何?。 import java.awt.*; import java.awt.TrayIcon.MessageType; import
Time of Update: 2018-07-25
使用語言:JAVA 如何將List中存放的實體按照某個欄位進行分組呢。來看看下面的例子,假如實體中有個欄位叫批次號,我們將具有相同批次號的實體放在一起,那麼怎麼實現呢。看下面的代碼: 可以定義個Map,Map的key用於存放異常批次號,value存放實體集合List<TmExcpNewVo>。迴圈要排序的List /** * 按照異常批次號對已開單資料進行分組 * @param billingList * @return * @throws