Time of Update: 2015-08-02
標籤:一、Java分支語句類型if-else 語句switch關於if-esle語句可以拆分為三種if語句if(條件){語句塊;}if-else語句if(條件陳述式){語句塊;}if-else if語句if (條件陳述式1){語句塊;}else if(條件陳述式2);{語句塊2;}...else if(條件陳述式n){語句塊n;} 關於switch語句 switch(
Time of Update: 2015-08-02
標籤:java 物件導向 例子一:import java.util.Map;import java.util.Set;import java.util.HashMap;public class HashMapDemo1 {publicstatic void main(String args[]){User user1 = new User("001","Jack",12);User
Time of Update: 2015-08-02
標籤: 題目:輸入兩個正整數number1和number2,求其最大公約數和最小公倍數。 演算法:較大數和較小數取餘,較小數除餘數,一直到餘數為0時,為最大公約數(輾轉相除法);最大公倍數numbe1*number2/(最大公約數),下面直接上代碼:import java.util.Scanner;public class Max_Min { static int n1; public static void main(String[] args) {
Time of Update: 2015-08-02
標籤:設計模式主要分三個類型:建立型、結構型和行為型。 其中建立型有: 一、Singleton,單例模式:保證一個類只有一個執行個體,並提供一個訪問它的全域訪問點 例如:隨處可見,比如Servlet,sprigMVC建立時都是單例多線程的。 二、Abstract Factory,抽象工廠:提供一個建立一系列相關或相互依賴對象的介面,而無須指定它們的具體類。 三、Factory Method,Factory
Time of Update: 2015-08-02
標籤:物件導向 java java 反射java.lang.Class物件導向的原理一般認為萬物萬事皆對象a.類名.classb.如果對象存在可以直接對象.getClassc.Class.forName("類的全稱");例子:package corelesson;import java.lang.reflect.Constructor;import
Time of Update: 2015-08-02
標籤:目的:資料的初始化是非常重要的,未經初始化的資料很多情況下都不是期望的結果,很多忘記初始化的資料是導致錯誤的根源。建構函式就是提供了一個初始化的地方,可以把初始化資料的代碼寫在建構函式裡。當然允許你可以不寫在建構函式裡,可以自訂一個方法再去調用,不過建構函式的方便之處在於只要建立了對象,就會自動地調用建構函式,保證不會忘記調用。這才是使用建構函式的根本目的。如果有一些特殊情況,比如建立對象的時候初始化會帶來效能問題,比如串連資料庫等耗時的操作,是不必在建構函式內寫資料庫的初始化代碼的。代碼
Time of Update: 2015-08-02
標籤:從JDK1.2版本開始,把對象的引用分為四種層級,從而使程式能更加靈活的控制對象的生命週期。這四種層級由高到低依次為:強引用、軟引用、弱引用和虛引用。 1.強引用 以前我們使用的大部分引用實際上都是強引用,這是使用最普遍的引用。如果一個對象具有強引用,那就類似於必不可少的生活用品,記憶體回收行程絕不會回收它。當記憶體空
Time of Update: 2015-08-02
標籤:重溫下Java集合知識,這塊是面試以及項目開發中常常涉及到的知識點,以作記錄。聲明一個數組就是在記憶體空間划出一串聯續的空間。數組是比較常用的一種資料結構,但是在項目開發中,由於某些不確定因素,需要採用集合來實現,比如:1、數組的容量大小是固定的,針對容量擴容情況,array不支援;2、數組元素類型為相同資料類型,集合可儲存不同資料類型元素。同時Array和Collection又存在關聯性,使用相應的toArray()和Arrays.asList()方法可以回想轉換。Collection集
Time of Update: 2015-08-02
標籤:java學習 關鍵字 assert instanceof strictfp 一、instanceof作用:判斷一個參考型別的變數所指向的對象是否是一個(或介面、抽象類別、父類)的執行個體。用法:boolean result= object instanceof
Time of Update: 2015-08-02
標籤:眾所周知,我們既可以在 activity_main.xml檔案中控制activity中的view,也可以使用java代碼的set..()方法控制它。在學習過程中,發現在ADT新版本中,和以前版本有區別:建立Andriod工程後,MainActivity 不再繼承Activity,而繼承的是ActionBarActivity;在layout檔案夾下會自動產生兩個.xml檔案,activity_main.xml檔案和fragement_main.xml檔案,和以前的版本只有
Time of Update: 2015-08-01
標籤:引言 如果一個程式只包含固定數量的且其生命週期都是已知對象,那麼這是一個非常簡單的程式——《think in java》 瞭解容器前,先提出一個問題,ArrayList和LinkedList誰的處理速度更快呢?一 持有對象的方式 在Java中,我們可以使用數組來儲存一組對象。但是,數組是固定大小的,在一般情況下,我們寫程式時並不知道將需要多少個對象,因此數組固定大小對於編程有些受限。
Time of Update: 2015-08-01
標籤:本文主要介紹一些java線程同步工具類,並不進行具體講解,當有需要時,可以再去結合執行個體學習。 號誌(Semaphore) 應用情境舉例: 例如公司的打卡系統,如果有一個打卡機,那麼一次就只能有一個人打卡,其餘的人就被阻塞住,打卡完以後就可由下一個人打卡。如果有3個打卡機,那麼一次就允許3個人或者少於三個人打卡,其餘的人就得等待打卡機空閑下來才能繼續打卡。 結果: 已進入1個線程,還可進入2個已進入2個線程,還可進入1個已進入3個線程,還
Time of Update: 2015-08-01
標籤:唯一路徑 分法法 面試 演算法 java 【063-Unique Paths II(唯一路徑問題II)】【LeetCode-面試演算法經典-Java實現】【所有題目目錄索引】原題 Follow up for “Unique Paths”: Now consider if some obstacles are
Time of Update: 2015-08-02
標籤:import java.io.UnsupportedEncodingException; public class ConToByte { /** * double轉換byte * @param arr byte[] *
Time of Update: 2015-08-01
標籤: 今天學習了Java的類和對象的相關知識,由於Java物件導向的編程的思想和C++幾乎一樣,所以需要更多的關注Java的一些不同之處。1.類 1.1 在類這一塊,除了基本的成員變數,成員方法,建構函式等外,需要掌握三種許可權修飾符的區別,並會合理使用(private限制了許可權只在本類,protected限定了許可權只在包內)。 1.2 靜態常量、變數、方法:static修飾。我們可以使用“類名.靜態類成員”來調用,如:public class
Time of Update: 2015-08-01
標籤:java properties 在Java項目中一些配置參數儲存在Property檔案中,這樣能保證不修改原代碼直接修改Property檔案。PropertyParser.javapackage com.discover.parse;import java.io.File;import java.io.FileInputStream;import java.io.InputStream;import
Time of Update: 2015-08-01
標籤:16、同步和非同步有何異同,在什麼情況下分別使用他們?舉例說明。如果資料將線上程間共用。例如正在寫的資料以後可能被另一個線程讀到,或者正在讀的資料可能已經被另一個線程寫過了,那麼這些資料就是共用資料,必須進行同步存取。當應用程式在對象上調用了一個需要花費很長時間來執行的方法,並且不希望讓程式等待方法的返回時,就應該使用非同步編程,在很多情況下採用非同步途徑往往更有效率。17、abstract
Time of Update: 2015-08-01
標籤:java 執行個體 參考 概念:java提供了一種原程式中的元素關聯任何資訊和任何中繼資料的途徑和方法 JDK內建系統註解: @Override 用於修飾此方法覆蓋了父類的方法; @Deprecated 用於修飾已經過時的方法; @Suppvisewarnings 用於通知java編譯器禁止特定的編譯警告。 註解按照運行機制劃分 源碼註解:註解只在源碼中存在,編譯成.class檔案就不存在了;
Time of Update: 2015-08-01
標籤:大家都知道,在Java中,對於對象的比較,如果用“==”比較的是對象的引用,而equals才是比較的對象的內容。 一般我們在設計一個類時,需要重寫父類的equals方法,在重寫這個方法時,需要按照以下幾個規則設計:1、自反性:對任意引用值X,x.equals(x)的傳回值一定為true.2、對稱性:對於任何引用值x,y,若且唯若y.equals(x)傳回值為true時,x.equals(y)的傳回值一定為true;3、傳遞性:如果x.equals(y)=t
Time of Update: 2015-08-01
標籤:在C++中,在heap上指派至比在stack上指派至更加昂貴。程式需要找到合適的記憶體塊,再返回記憶體的地址。但是在Java中記憶體回收行程顯著地提高了在heap上指派至的速度。聽起來會有些怪,但是這就是Java記憶體回收行程工作的方式。而且這意味著Java中在heap上指派至幾乎跟其他語言在stack上指派至一樣快。比如說,C++中heap像是一個院子,每個對象佔據自己的地盤。在一些JVM中,Java的heap更像是傳送帶,每次分配一個對象時,傳送帶就會往前進一點(而不需要尋找合適的記憶