Time of Update: 2017-01-19
什麼是反射“反射(Reflection)能夠讓運行於JVM中的程式檢測和修改運行時的行為。”這個概念常常會和內省(Introspection)混淆,以下是這兩個術語在Wikipedia中的解釋: 內省用於在運行時檢測某個對象的類型和其包含的屬性; 反射用於在運行時檢測和修改某個對象的結構及其行為。 從它們的定義可以看出,內省是反射的一個子集。有些語言支援內省,但並不支援反射,如C++。內省樣本:instanceof 運算子用於檢測某個對象是否屬於特定的類。if (obj
Time of Update: 2017-01-19
觀察者模式是軟體設計模式中的一種,使用也比較普遍,尤其是在GUI編程中。關於設計模式的文章,網路上寫的都比較多,而且很多文章寫的也不錯,雖然說有一種重複早輪子的嫌疑,但此輪子非彼輪子,側重點不同,思路也不同,講述方式也不近相同。關鍵要素主題:主題是觀察者觀察的對象,一個主題必須具備下面三個特徵。 持有監聽的觀察者的引用 支援增加和刪除觀察者
Time of Update: 2017-01-19
線程鎖LockLock 相當於 當前對象的 Synchronizedimport java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; /* * Lock lock = new ReentrantLock(); * lock.lock(); lock.unLock(); * 類似於 synchronized,但不能與synchronized 混用 */
Time of Update: 2017-01-19
a)原理:順序尋找就是按順序從頭到尾依次往下尋找,找到資料,則提前結束尋找,找不到便一直尋找下去,直到資料最後一位。b)圖例說明: 未經處理資料:int[]a={4,6,2,8,1,9,0,3}; 要尋找數字:8找到數組中存在資料8,返回位置。代碼示範:import java.util.Scanner;/* * 順序尋找 */public class SequelSearch {public static void main(String[] arg) { int[] a={4,6,2,8,
Time of Update: 2017-01-19
a)原理:每一趟從待排序的記錄中選出最小的元素,順序放在已排好序的序列最後,直到全部記錄排序完畢。也就是:每一趟在n-i+1(i=1,2,…n-1)個記錄中選取關鍵字最小的記錄作為有序序列中第i個記錄。基於此思想的演算法主要有簡單選擇排序、樹型選擇排序和堆排序。(這裡只介紹常用的簡單選擇排序)b)簡單選擇排序的基本思想:給定數組:int[]arr={裡面n個資料};第1趟排序,在待排序資料arr[1]~arr[n]中選出最小的資料,將它與arrr[1]交換;第2趟,在待排序資料arr[2]~ar
Time of Update: 2017-01-19
原理:比較兩個相鄰的元素,將值大的元素交換至右端。思路:依次比較相鄰的兩個數,將小數放在前面,大數放在後面。即在第一趟:首先比較第1個和第2個數,將小數放前,大數放後。然後比較第2個數和第3個數,將小數放前,大數放後,如此繼續,直至比較最後兩個數,將小數放前,大數放後。重複第一趟步驟,直至全部排序完成。舉例說明:要排序數組:int[]arr={6,3,8,2,9,1};第一趟排序: 第一次排序:6和3比較,6大於3,交換位置:368291 第二次排序:6和8比較,6小於8,不交換位置
Time of Update: 2017-01-19
一、Java中的static使用之靜態變數1.Java 中被static修飾的成員稱為靜態成員或類成員。它屬於整個類所有,而不是某個對象所有,即被類的所有對象所共用、且優先於對象存在。靜態成員可以使用類名直接存取,也可以使用對象名進行訪問。使用 static 可以修飾變數、方法和代碼塊。2.public 修飾符表示公開的、公有的,靜態變數使用static修飾3.靜態方法中可以直接調用同類中的靜態成員,但不能直接調用非靜態成員。public class HellWorld{ String
Time of Update: 2017-01-19
直接插入排序1 排序思想:將待排序的記錄Ri插入到已經排好序的記錄R1,R2,……,R(N-1)中。對於一個隨機序列而言,就是從第二個元素開始,依次將這個元素插入到它之前的元素中的相應位置。它之前的元素已經排好序。第1次排序:將第2個元素插入到前邊的有序列表(此時前邊只有一個元素,當然是有序的),之後,這個序列的前2個元素就是有序的了。第2次排序:將第3個元素插入到前邊長度為2的有序列表,使得前2個元素是有序的。以此類推,直到將第N個元素插入到前面長度為(N-1)的有序列表中。2
Time of Update: 2017-01-19
1、資源檔命名國際化資源檔命名格式如下: basename_language_country.properties basename_language.properties basename.properties 其中basename為資源檔的基本名稱,language和country必須是java支援的語言和國家。擷取java支援的語言和國家代碼如下:Locale[] locales = Locale.getAvailableLocales(); for(Locale
Time of Update: 2017-01-19
一、開發環境jdk1.7 tomcat7 eclipse-jee-luna-R-win32 maven2.2.1二、搭建步驟1、點擊File->New->Other,選擇maven project2、選擇maven project,點擊Next,,而後再點擊next,進入如下介面如圖選擇最後一個,點擊next3、看到以下介面輸入Group Id跟Artifact Id,點擊finish完成基本建立4、建立好的項目結構如圖所示(Java視圖)如果是Java
Time of Update: 2017-01-19
1. 模式介紹模式的定義確保某一個類只有一個執行個體,而且自行執行個體化並向整個系統提供這個執行個體。模式的使用情境確保某個類有且只有一個對象的情境,例如建立一個對象需要消耗的資源過多,如要訪問 IO 和資料庫等資源。2. UML類圖角色介紹:(1)Client : 高層用戶端。(2)Singleton : 單例類。3. 模式的簡單實現public class Singleton { private static Singleton intance; private Singleton(
Time of Update: 2017-01-19
在我們平時寫程式的時候,有些參數是經常改變的,而這種改變不是我們預知的。比如說我們開發了一個操作資料庫的模組,在開發的時候我們串連本地的資料庫那麼IP ,資料庫名稱,表名稱,資料庫主機等資訊是我們本地的,要使得這個操作資料的模組具有通用性,那麼以上資訊就不能寫死在程式裡。通常我們的做法是用設定檔來解決。各種語言都有自己所支援的設定檔類型。比如Python ,他支援.ini 檔案。因為他內部有一個ConfigParser 類來支援.ini
Time of Update: 2017-01-19
廢話不多說了,直接給大家代碼分享代碼了。具體代碼如下所示:package test;/*** * @Title 書的資訊類* @author LR* @version .* @since --*/public class Book {private String book_id;private String book_name;private String publishing_house;public Book(String book_id, String book_name, String
Time of Update: 2017-01-19
本文為大家分析了Java中字元流與位元組流的區別,供大家參考,具體內容如下1. 什麼是流 Java中的流是對位元組序列的抽象,我們可以想象有一個水管,只不過現在流動在水管中的不再是水,而是位元組序列。和水流一樣,Java中的流也具有一個“流動的方向”,通常可以從中讀入一個位元組序列的對象被稱為輸入資料流;能夠向其寫入一個位元組序列的對象被稱為輸出資料流。2. 位元組流
Time of Update: 2017-01-19
新添加個發文類型insert into mis.zyb_sf_type values('121','榆財法字','榆財法字',2,'0','1',21,NULL,'0','發文模板.doc','')建立文章時出錯了,異常資訊:檔案儲存失敗Java.io.FileNotFoundException: E:\tomcat\jinzhongshi\jinzs_yuci\webapps\myDoJZS\word\template_fw\發文模版.doc (系統找不到指定的檔案。)at
Time of Update: 2017-01-19
簡單原廠模式類圖通過一個工廠類,以一個條件來建立對應的對象//業務功能 public interface ICalculation { double getResult(double numA, double numB); } public class CalcAdd implements ICalculation { @Override public double getResult(double numA, double numB) {
Time of Update: 2017-01-19
優先順序隊列如果我們給每個元素都分配一個數字來標記其優先順序,不妨設較小的數字具有較高的優先順序,這樣我們就可以在一個集合中訪問優先順序最高的元素並對其進行尋找和刪除操作了。這樣,我們就引入了優先順序隊列 這種資料結構。 優先順序隊列(priority queue) 是0個或多個元素的集合,每個元素都有一個優先權,對優先順序隊列執行的操作有(1)尋找(2)插入一個新元素 (3)刪除 一般情況下,尋找操作用來搜尋優先權最大的元素,刪除操作用來刪除該元素
Time of Update: 2017-01-19
Base64是網路上最常見的用於傳輸8Bit位元組代碼的編碼方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的詳細規範。Base64編碼可用於在HTTP環境下傳遞較長的標識資訊。例如,在Java Persistence系統Hibernate中,就採用了Base64來將一個較長的唯一識別碼(一般為128-bit的UUID)編碼為一個字串,用作HTTP表單和HTTP GET URL中的參數。在其他應用程式中,也常常需要把位元據編碼為適合放在URL(包括隱藏表單域)中的形式。此時,
Time of Update: 2017-01-19
本文執行個體為大家分享了Java使用cookie顯示最近查看過的書的相關方法,供大家參考,具體內容如下1.ben包 import java.io.Serializable; public class Book implements Serializable { private String id; private String name; private String price; private String auth; private
Time of Update: 2017-01-19
本文執行個體為大家分享了java實現TCPSocket聊天室功能的相關代碼,供大家參考,具體內容如下1.TCPserver.javaimport java.net.*;import java.io.*;import java.util.*;import java.util.concurrent.*;public class TCPserver{ private static final int SERVERPORT = 8888; private ServerSocket MyServer