Time of Update: 2017-02-27
Java不支援類的多重繼承,但可以使用內部類來繼承實現更多的類。下面的例子,目標類需要繼承兩個抽象類別(A和B)。目標類C本身繼承類A,並使用一個匿名內部類繼承另一個類B。MultiImplementation.javaabstract class A { abstract void methodA();}abstract class B { abstract void methodB();}class C extends A { @Override void methodA() {
Time of Update: 2017-02-27
以前寫JAVA時想練練手寫一個編輯器,涉及到JAVA代碼的編譯部分,考慮調用用javac.exe來編譯,一下這段代碼是用於將編譯後產生的錯誤資訊反饋到GUI上.同理,在cmd下執行的任何命令都可以反饋到GUI中.//運行效果圖//以下代碼用到了SWT相關的包import java.io.IOException;import java.io.InputStream;import org.eclipse.swt.SWT;import
Time of Update: 2017-02-27
對於一般的成員變數,對其提供簡單的getter/setter封裝即可。而對於一個集合類,不能夠這樣做。對於一個簡單的成員變數,可以這樣:class Athlete { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } // ......}而如果是一個Set/List/Map或數組,應該:[1
Time of Update: 2017-02-27
伺服器:jrun4組件:flash remoting components as2.0軟體:flash mx 2004 pro在安裝好後,開啟jrun4的管理頁面,進入頁面之後你會看到jrun已經建立好了3個伺服器,分別是admin,default和samples,我們使用的伺服器為default,對與flash remoting的相關用法可參照lwanchen的flashremoting實踐(三)-hello world for
Time of Update: 2017-02-27
用第一個java虛擬機器啟動另一個虛擬機器,並用第一個虛擬機器的java程式去測試另一個虛擬機器上java程式運行時的記憶體,CPU資源佔用情況。解決問題的限制和條件:1》兩個虛擬機器運行在同台Windows_X86機上。2》只需要知道第二個虛擬機器上運行程式時,第二個虛擬機器的記憶體、CPU使用方式。3》目的是:測試不同的程式在同個虛擬機器上資源使用差別。解決問題的關鍵:第一 如何啟動另一虛擬機器運行測試的java程式。第二
Time of Update: 2017-02-27
從JavaFX官方部落格上讀了一篇文章,是討論從Java代碼中調用JavaFX類的方法。現在的情況是,JavaFX可以調用Java的類,基本沒有什麼限制,而反過來,Java卻不可以隨便調用JavaFX的類。這點可以從JavaFX項目的編譯過程看出原因。以NetBeans為例,Build的過程是先編譯Java代碼(javac),然後才是JavaFX代碼(javafxc),這樣一來,Java代碼不知道有JavaFX類,而JavaFX類卻可以”看見”Java類。搜尋一下我們可以
Time of Update: 2017-02-27
1.Java 集合架構圖-集合介面:6個介面(短虛線表示),表示不同集合類型,是集合架構的基礎。-抽象類別:5個抽象類別(長虛線表示),對集合介面的部分實現。可擴充為自訂集合類。-實作類別:8個實作類別(實線表示),對介面的具體實現。2.Java容器類介紹① Java容器類都可以自動地調整自己的尺寸。② Collection 介面是一組允許重複的對象。③ Set 介面繼承 Collection,不允許重複,使用自己內部的一個排列機制。④ List 介面繼承
Time of Update: 2017-02-27
使用泛型T代表所要統計資訊的類,應該有效定義該類的equals()和hasCode()。statistics()方法進行關鍵字統計。getAllKeysStatistics()方法返回底層的Map,即所有的鍵-值對。getAllKeys()方法返回所有key組成的Set。getKeyStatistics()方法返回單個確定Key的統計資訊。測試例使用10000個隨機整型數(0~9)來統計它們的產生頻率。package com.zj.col;import
Time of Update: 2017-02-27
1.提供一組棧的介面,其底層關聯到一個LinkedList(雙端隊列)執行個體。由於只暴露部分基於棧實現的介面,所以可以提供安全的棧實現。import java.util.LinkedList;public class Stack<T> { private LinkedList<T> storage = new LinkedList<T>(); /** 入棧 */ public void push(T v) { storage.addFirst(
Time of Update: 2017-02-27
建了一個預存程序create procedure PR_YDFT_GETFT_TIME @AJLB tinyint, -- 案例類別 @AJBHLIST varchar(1500), -- 案例編號清單 @KSSJ datetime, -- 開始時間 @JSSJ datetime -- 結束時間asbegin…………select BH, AH from K_ZS..B_ZX
Time of Update: 2017-02-27
1.兩種比較介面分析在“集合架構”中有兩種比較介面:Comparable介面和Comparator介面。Comparable是通用的介面,使用者可以實現它來完成自己特定的比較,而Comparator可以看成一種演算法的實現,在需要容器集合實現比較功能的時候,來指定這個比較子,這可以看成一種設計模式,將演算法和資料分離。前者應該比較固定,和一個具體類相綁定,而後者比較靈活,它可以被用於各個需要比較功能的類使用。一個類實現了Camparable介面表明這個類的對象之間是可以相
Time of Update: 2017-02-27
MVC方式通常在Smalltalk中用於建立使用者介面。通過對MVC中蘊藏的設計模式可以幫你理解我們所說的“模式”的含義。MVC包括三類對象,Model是應用對象、View為其螢幕表示、Controller定義了對使用者輸入的處理(反應)方式。在應用MVC方式以前,通常將這三個對象的功能合到了一起,應用MVC分離了它們,為設計提供了靈活性和可重用性。MVC通過在view和model之間建立Subscribe/Notify協議,分離了view和model對象。View對象必
Time of Update: 2017-02-27
1. MD5加密,常用於加密使用者名稱密碼,當使用者驗證時。protected byte[] encrypt(byte[] obj) ...{ try ...{ MessageDigest md5 = MessageDigest.getInstance("MD5"); md5.update(obj); return md5.digest(); } catch (NoSuchAlgorithmException e)
Time of Update: 2017-02-27
在一個物件導向的系統中,系統的各種功能是由許許多多的不同對象協作完成的。在這種情況下,各個對象內部是如何?自己的對系統設計人員來講就不那麼重要了;而各個對象之間的協作關係則成為系統設計的關鍵。小到不同類之間的通訊,大到各模組之間的互動,在系統設計之初都是要著重考慮的,這也是系統設計的主要工作內容。面向介面編程我想就是指按照這種思想來編程吧!實際上,在日常工作中,你已經按照介面編程了,只不過如果你沒有這方面的意識,那麼你只是在被動的實現這一思想;表現在頻繁的抱怨別人改的代碼影響了你(介面沒有設計到
Time of Update: 2017-02-27
1.Design2.Codeimport java.io.IOException;public class CRC16Checker { private static int[] index = new int[] { 16, 15, 2, 0 }; private static int[] getBinary(String text) { StringBuffer num = new StringBuffer();
Time of Update: 2017-02-27
什麼是 Jacks?Jacks 測試套件檢查 Java 編譯器是否符合 JLS(Java 語言規範)。它由大量小測試案例組成,每個測試都側重於 JLS 中特定的部分。Eric Blake 為 Jacks 項目作出了很大貢獻,他從面向細節領域描述了這種類型測試的好處。“通過產生帶有指定編譯行為的小測試案例,然後將每個案例的執行自動化,編譯器作者或調試者可以快速找出 Java 源碼到位元組碼轉換中存在的問題。”開發 Jacks
Time of Update: 2017-02-27
在今天的多層結構的web應用程式的設計中,我們可以同時使用Java applet和Servlet。Applet為建立功能強大的動態介面提供了便利的機制,Servlet為web伺服器或者其他應用伺服器處理請求提供了高效率的手段。Sun公司的應用程式模型描述了在Java2平台下開發企業級的Java應用的最好的規範。一種被推薦的規範是:在前端使用Applet、HTML和JSP,在後端使用Enterprise
Time of Update: 2017-02-27
現在許多系統的註冊、登入或者發布資訊模組都添加的隨機碼功能,就是為了避免自動註冊程式或者自動發布程式的使用。驗證碼實際上就是隨機播放一些字元以圖片的形式展現在頁面上,如果進行提交操作的同時需要將圖片上的字元同時提交,如果提交的字元與伺服器session儲存的不同,則認為提交資訊無效。為了避免Bot分析解析圖片,通常會在圖片上隨機產生一些幹擾線或者將字元進行扭曲,增加自動識別的難度。在這裡,我們使用servlet來實現隨機驗證碼的實現。package com.servlet;import
Time of Update: 2017-02-27
或許每個軟體從業者都有從學習控制台應用程式到學習可視化編程的轉變過程,控制台應用程式的優點在於可以方便的練習某個語言的文法和開發習慣(如.net和java),而可視化編程的學習又可以非常方便開發出各類人機對話介面(HMI)。可視化編程或許是一個初學者開始對軟體感興趣的開始,也可能是一個軟體學習的裡程碑點,因為我們可以使用各類軟體整合式開發環境(IDE)方便的在現成的介面視窗上拖放各類組件(Component),這類組件包括我們常見的按鈕(Button),選項按鈕(Radio
Time of Update: 2017-02-27
引言現在的各種資料庫應用,由於技術、曆史等因素,往往在一個大的部門中並存有多個應用系統。這些應用系統可能分散於不同的網路節點、基於不同的操作平台、使用不同的資料庫管理系統,且各子系統封閉運行,自成一體,這樣給不同部門的資訊資源共用帶來困難。如何在不改變原來系統的內部資訊的前提下,完成不同資料庫系統間的資料訪問和交換是值得研究的問題。多資料庫系統的Java解決方案多資料庫系統的構成有多種方式,在這些方式中,我們考察這些多資料庫的不同點,其主要表現在以下幾個方面的異構:(1)資料庫邏輯資料模型的異構