Time of Update: 2018-12-04
Java 多線程編程之七:死結(附原始碼)原始碼下載 多線程編程中,線程死結也是一個比較有趣的問題。然而死結發生的可能性很小,正因如此,大家可能對此不是很熟悉。但是死結並不是不重要,因為它確確實實存在著,隨時會出現在我們的程式之中。很多朋友面試的時候都遇到過這樣類似的一個編程題:使用 Java
Time of Update: 2018-12-04
聲明:本人這裡雖然整合了spring但沒有建立串連池和jdbc連結資料庫的配置,如果用到可自行配置XFire:XFire是新一代的Java Web服務引擎,XFire使得在JavaEE應用中發布Web服務變得輕而易舉。和其他Web服務引擎相比,XFire的配置非常簡單,可以非常容易地和Spring整合,它使得Java開發人員終於可以獲得和.Net開發人員一樣的開發效率。Webservice:Web
Time of Update: 2018-12-04
java for迴圈的幾種寫法J2SE
Time of Update: 2018-12-04
JAVA方面 1 物件導向的特徵有哪些方面 2 String是最基本的資料類型嗎? 3 int 和 Integer 有什麼區別 4 String 和StringBuffer的區別 5運行時異常與一般異常有何異同? 異常表示程式運行過程中可能出現的非正常狀態,運行時異常表示虛擬機器的通常操作中可能遇到的異常,是一種常見運行錯誤。java編譯器要求方法必須聲明拋出可能發生的非運行時異常,但是並不要求必須聲明拋出未被捕獲的運行時異常。 6 說出一些常用的類,包,介面,請各舉5個 7
Time of Update: 2018-12-04
Java 存取權限控制
Time of Update: 2018-12-04
本系列為《深入理解Java虛擬機器 》(周志明著)讀書筆記VM的記憶體配置機制大致遵循這幾個原則:對象優先在Eden分配大多數情況下,對象中新生代的Eden區分配。當Eden區沒有足夠的記憶體時,JVM將發起一次Minor
Time of Update: 2018-12-04
讀寫properties檔案Java讀寫Properties檔案是一個比較常見的需求,一般的做法是將properties檔案讀到Properties類對象中,通過Properteis對象來操作。下面是一段執行個體代碼: /** * Read Properties file with ASCII codes only */ public static Properties getProperties(String fileName, String path){
Time of Update: 2018-12-04
Java
Time of Update: 2018-12-04
MIME協議(中文版).doc 本部落格介紹如何進行檔案的分塊上傳。本文側重介紹用戶端,伺服器端請參考部落格《Java 檔案分塊上傳伺服器端原始碼》。建議讀者朋友在閱讀本文代碼前先瞭解一下 MIME 協議。 所謂分塊上傳並非把大檔案進行物理分塊,然後挨個上傳,而是依次讀取大檔案的一部分檔案流進行上傳。分塊,倒不如說分流比較切實。本文通過一個項目中的樣本,說明使用 Apache 的 HttpComponents/HttpClient
Time of Update: 2018-12-04
程式人生之一:一個四年 JAVA 程式員的工作經曆 很感謝 CSDN 網友 liudonglovehemin 的這篇文章,真實記錄了一個 Java 程式員的 4 年來在北京工作、學習、生活的成長之路。此情此景,作為“北漂”一族的我們豈能無動於衷?之所以轉載了下來,是因為確實有很多地方值得我們借鑒和參考,諸如職場、生活、技術。很多地方又是值得我們思考的。因為這些是每一個程式員都曾經、或者即將面對的。文章原文部分如下:
Time of Update: 2018-12-04
volatile
Time of Update: 2018-12-04
進程與線程,並發和並行的區別:吃饅頭的比喻 沒有線程編程的程式好比一個人一隻手幹活,而多線程的程式就比一個人多之手幹活.進程是系統資源分派的獨立單位,而線程是可調度啟動並執行獨立單位,一個進程可以擁有多個線程,線程是進程並行完成的多個任務.並發和並行的區別就是一個處理器同時處理多個任務和多個處理器或者是多核的處理器同時處理多個不同的任務.前者是邏輯上的同時發生(simultaneous),而後者是物理上的同時發生.並發性
Time of Update: 2018-12-04
擷取 Java VM 中當前啟動並執行所有線程 程式運行圖: 下面的靜態方法可以用數組返回 Java VM 中當前啟動並執行所有線程public static Thread[] findAllThreads() {ThreadGroup group = Thread.currentThread().getThreadGroup();ThreadGroup topGroup = group; // 遍曆線程組樹,擷取根線程組while ( group !
Time of Update: 2018-12-04
文章目錄 向下轉型 1.繼承文法當建立一個類時,要麼顯示的指定它繼承的類,例如A extends B,不然它會隱式的繼承根類Object。至於繼承的具體文法,這裡我就不贅述了,這裡我要寫的是關於繼承中的許可權問題:以A extends B為例,B中的方法必須為public的,這一點非常重要。請記住,如果沒有加任何許可權修飾詞,那麼成員的預設存取權限是包存取權限,也就是說包裡面的成員都可以訪問其方法。但是,其他包中的成員比如C
Time of Update: 2018-12-04
package aaa;import java.sql.*;import java.io.*;import java.util.*;import java.lang.*;import java.net.*;public class DBConn{ Connection conn = null; ResultSet rs = null; private String link="jdbc:oracle:thin:@192.168.10.120:1521:DBNAME"; private
Time of Update: 2018-12-04
原廠模式:根據原廠模式實現的類可以根據提供的資料產生一組類中某一個類的執行個體,而這一組類有一個公用的抽象父類 //實現一個InterfaceFactory介面package factory;public interface InterfaceFactory { public void say();}//建立Son1類,該類用於實現InterfaceFactory並列印出son1package factory;public class Son1 implements
Time of Update: 2018-12-04
//建立DBConnection借口package com.adepter.test;public interface DBConnection {public void insert();}//建立DBConnection的實作類別DBConnectionImplpackage com.adepter.test;public class DBConnectionImpl implements DBConnection {@Overridepublic void insert() {//
Time of Update: 2018-12-04
程式運行時,對象時怎麼進行放置安排的?特別記憶體是怎麼分配的?對於這方面的瞭解對我們理解程式的運行有很大的協助。有五個地方可以儲存資料:1》儲存空間。這是最快的儲存區,因為它位於不同於其他儲存區的地方——處理器內部。但是寄存器的數量極其有限,所以寄存器根據需求進行分配。2》堆棧。堆棧簡稱棧(stack),位於通用RAM,但通過堆棧指標可以從處理器那裡獲得直接支援。堆棧指標若向下移動,則分配新的記憶體;若向上移動,則釋放那些記憶體。這是一種快速有效分配儲存方式,僅次於寄存器。java的對象引用就儲
Time of Update: 2018-12-04
1. 選擇排序選擇排序的基本思想是遍曆數組的過程中,以 i 代表當前需要排序的序號,則需要在剩餘的 [i…n-1] 中找出其中的最小值,然後將找到的最小值與 i 指向的值進行交換。因為每一趟確定元素的過程中都會有一個選擇最大值的子流程,所以人們形象地稱之為選擇排序。舉個執行個體來看看:初始: [38, 17, 16, 16, 7, 31, 39, 32, 2, 11]i = 0: [2 , 17, 16, 16, 7, 31, 39, 32, 38 , 11]
Time of Update: 2018-12-04
是個程式員都知道,在C/C++裡面交換值的方法:void swap(int&a ,int&b){ int temp; temp = a; a = b; b = temp;}但在JAVA中用這種方法是行不通的,因為“Java對普通類型的變數是不支援引用傳遞的”。怎麼辦呢? 1. 可以像下面這樣通過傳數組(也屬於傳值)的方法來完成對換(在很多排序演算法裡面就是這麼乾的):public static void swap(int[] data, int a,