Time of Update: 2018-12-07
在文章標題:從File類開始IO系統介紹作 者:mingjava更新時間:2004-9-11 0:14:34點擊次數:5" href="http://www.j2medev.com/Article_Show.asp?ArticleID=79" target="_blank">從File類開始IO系統介紹一文中,我們詳細的介紹了File類。這個類非常有用,我們可以用它作橋樑把檔案和流輕鬆的聯絡起來。在Java IO專題中,我準備先介紹一些實用的關於Java
Time of Update: 2018-12-07
今天跟惡友在QQ群裡火拚口水,他的一個朋友要學JAVA。好麼,興趣,純的~~上噹噹一搜,第一本java書出爐:Java Script深度剖析(第2版)——Java經典教材譯叢我沒背過氣去,javascript也叫JAVA?看介紹更悶: 本書適合於大中專院電腦相關專業作為教材,也是JavaScript初學者以及JavaScript愛好者的理想參考用書。書中詳細介紹了基本的JavaScript程式設計原理以及實現它們的文法,內容包括JavaScript簡介,變理、函數、對角和事件,資料類型、運算子,
Time of Update: 2018-12-07
引言 http(超文字傳輸通訊協定 (HTTP))是一個基於請求與響應模式的、無狀態的、應用程式層的協議,常基於TCP的串連方式。HTTP協議的主要特點是: 1.支援客戶/伺服器模式。 2.簡單快速:客戶向伺服器請求服務時,只需傳送要求方法和路徑。由於HTTP協議簡單,通訊速度很快。 3.靈活:HTTP允許傳輸任意類型的資料對象。類型由Content-Type加以標記。
Time of Update: 2018-12-07
案例:package com.devin;public class MyMain {public static void main(String args[]) { Father f = new Son(); }}class Father {public Father() { System.out.println("Father Construct"); }static int a=printFahter();static int printFahter(
Time of Update: 2018-12-07
1.集合類類圖Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└Set ├HashSet ├TreeSet ├LinkedHashSetMap├Hashtable├HashMap├WeakHashMap└SortedMap
Time of Update: 2018-12-07
1. HashMap1) hashmap的資料結構 Hashmap是一個數組和鏈表的結合體(在資料結構稱“鏈表散列“),如示: 當我們往hashmap中put元素的時候,先根據key的hash值得到這個元素在數組中的位置(即下標),然後就可以把這個元素放到對應的位置中了。如果這個元素所在的位子上已經存放有其他元素了,那麼在同一個位子上的元素將以鏈表的形式存放,新加入的放在鏈頭,最先加入的放在鏈尾。2)使用Map map = new HashMap();map.put("
Time of Update: 2018-12-07
Java中記憶體分析: 棧(Stack) :存放基本類型的變數資料和對象的引用,但對象本身不存放在棧中,而是存放在堆(new 出來的對象)或者常量池中(字串常量對象存放在常量池中)。 堆(heap):存放所有new出來的對象。 常量池(constant pool):在堆中分配出來的一Block Storage地區,存放儲顯式的String常量和基本類型常量(float、int等)。另外,可以儲存不經常改變的東西(public static
Time of Update: 2018-12-07
對象池使用的基本思路是:將用過的對象儲存起來,等下一次需要這種對象的時候,再拿出來重複使用,從而在一定程度上減少頻繁建立對象所造成的開銷。 並非所有對象都適合拿來池化――因為維護對象池也要造成一定開銷。對產生時開銷不大的對象進行池化,反而可能會出現“維護對象池的開銷”大於“產生新對象的開銷”,從而使效能降低的情況。但是對於產生時開銷可觀的對象,池化技術就是提高效能的有效原則了。下面是構建對象池的一個例子:public class ObjectPool { private int
Time of Update: 2018-12-07
常用的:1.最佳化迴圈。通過重新組織重複的子運算式來提高迴圈體的運行效能。2減少使用對象的數量來提高運行效能。3.縮減網路傳輸資料來縮短等待時間。 其他:1.採用對象池技術,提高對象的利用效率。效能的損耗主要源於建立和釋放對象,因此要避免對象的建立和釋放。採用對象池技術,預先定義一個對象池,預先建立一組待使用的對象:Enemy[5] enemy=new Enemy[5];for(int i=0;i<5;i++){ enemy[i]=new
Time of Update: 2018-12-07
1.概念為其他對象提供一種代理以控制對這個對象的訪問。2.UML圖:3.代碼://抽象角色:public abstract class Subject{ abstract public void request();}//真實角色:實現了Subject的request()方法。public class RealSubject extends Subject{ public void request() {
Time of Update: 2018-12-07
1. JAVA調用系統命令或可執行程式 // String cmd = "F:\\apache-tomcat-6.0.20.exe"; // String cmd = "D:\\Program Files\\Microsoft Office\\OFFICE11\\WINWORD.EXE F:\\test.doc"; // String cmd = "cmd.exe /c start F:\\test.doc"; String cmd =
Time of Update: 2018-12-07
在java環境下讀取xml檔案的方法主要有4種:DOM、SAX、JDOM、JAXB1. DOM(Document Object Model) 此方法主要由W3C提供,它將xml檔案全部讀入記憶體中,然後將各個元素組成一棵資料樹,以便快速的訪問各個節點 。 因此非常消耗系統效能 ,對比較大的文檔不適宜採用DOM方法來解析。 DOM API 直接沿襲了 XML 規範。每個結點都可以擴充的基於 Node 的介面,就多態性的觀點來講,它是優秀的,但是在 Java 語言中的應用不方便,並且可讀性不強。
Time of Update: 2018-12-07
文章目錄 借鑒並引進了 SEH 異常模型中的 try-finally 文法 所有的異常都必須從 Throwable 繼承而來 對異常處理的管理更嚴格,也更嚴謹! 特別關注一下 RuntimeException 總結 對於一個非常熟悉 C++ 異常處理模型的程式員來說,它幾乎可以不經任何其它培訓和學習,就可以完全接受和能夠輕鬆地使用 Java 語言中的異常處理編程方法。這是因為 Java 語言中的異常處理模型幾乎與 C++
Time of Update: 2018-12-07
一、this Java關鍵字this只能用於方法方法體內。當一個對象建立後,Java虛擬機器(JVM)就會給這個對象分配一個引用自身的指標,這個指標的名字就是this。因此,this只能在類中的非靜態方法中使用,靜態方法和靜態代碼塊中絕對不能出現this,這在“Java關鍵字static、final使用總結”一文中給出了明確解釋。並且this只和特定的對象關聯,而不和類關聯,同一個類的不同對象有不同的this。下面給出一個使用this的綜合執行個體,以便說明問題:package
Time of Update: 2018-12-07
1.概念 將來自用戶端的請求傳入一個對象,從而使你可用不同的請求對客戶進行參數化。用於“行為要求者”與“行為實現者”解耦,可實現二者之間的松耦合,以便適應變化。分離變化與不變的因素。 在物件導向的程式設計中,一個對象調用另一個對象,一般情況下的調用過程是:建立目標對象執行個體;設定調用參數;調用目標對象的方法。但在有些情況下有必要使用一個專門的類對這種調用過程加以封裝,我們把這種專門的類稱作command類。Command模式可應用於 a)整個調用過程比較繁雜,或者存在多處這種調用。這時,
Time of Update: 2018-12-07
1.概念 定義一種一對多的依賴關係,當一個對象的狀態發生改變時,所有依賴於它的對象都得到通知並被自動更新。2.UML圖3.代碼interface Subject { public void attach(Observer observer); public void detach(Observer observer); void notifyObservers(); } public class ConcreteSubject implements Subject{private
Time of Update: 2018-12-07
1. 概念 Factory 方法:一抽象產品類派生出多個具體產品類;一抽象工廠類派生出多個具體工廠類;每個具體工廠類只能建立一個具體產品類的執行個體。 即定義一個建立對象的介面(即抽象工廠類),讓其子類(具體工廠類)決定執行個體化哪一個類(具體產品類)。“一對一”的關係。 抽象工廠:多個抽象產品類,派生出多個具體產品類;一個抽象工廠類,派生出多個具體工廠類;每個具體工廠類可建立多個具體產品類的執行個體。
Time of Update: 2018-12-07
1.定義內部類是指在一個外部類的內部再定義一個類。 內部類作為外部類的一個成員,並且依附於外部類而存在的。 內部類可為static,可用public、protected、private修飾。(而外部類不可以:外部類只能使用publi和default)。2.分類 在一個類(外部類)中直接定義的內部類(成員內部類)、 局部內部類、 靜態內部類、 匿名內部類。3.使用方法A. 在一個類中直接定義的內部類 1) 外部類不能直接存取內部類的的成員,但可以通過內部類對象來訪問。2)
Time of Update: 2018-12-07
Java對象池技術的原理及其實現 單例模式是限制了一個類只能有一個執行個體,對象池模式則是限制一個類執行個體的個數。對象池類就像是一個對象管理員,它以Static列表(也就是裝對象的池子)的形式存儲存某個執行個體數受限的類的執行個體,每一個執行個體還要加一個標記,標記該執行個體是否被佔用。當類初始化的時候,這個對象池就被初始化了,執行個體就被建立出來。然後,使用者可以向這個類索取執行個體,如果池中所有的執行個體都已經被佔用了,那麼拋出異常。使用者用完以後,還要把執行個體“還”回來,即釋放佔用
Time of Update: 2018-12-07
1.概念:將一個介面轉換成客戶希望的另外一個介面。(該模式使得原本不相容的類可以一起工作)2.UML圖(1)對象的Adapter模式結構圖(2)類的Adapter模式結構圖3.代碼(1)對象適配器public interface Target { public void Request();}public class Adaptee { public void SpecificRequest() { System.out.println("這是原始標準介面!");