原创 java併發之TimeUnit 原

一、TimeUnit和Thread.sleep() TimeUnit是java.util.concurrent包下面的一個類,TimeUnit提供了可讀性更好的線程暫停操作,通常用來替換Thread.sleep()。 大部分的程序員都已經熟

原创 synchronized的其他用法 原

用法一、關於函數的調用 代碼: public class Thread2 { public synchronized void method1(){ System.out.println("method1.."

原创 JVM詳解 原

一、java虛擬機內存管理 1、方法區(Method Area) 方法區(Method Area)與Java堆一樣,是各個線程共享的內存區域,它用於存儲已被虛擬機加載的類信息、常量、靜態變量、即時編譯器編譯後的代碼等數據。雖然Java虛

原创 java開發支持類庫 原

一、UUID     一種生成無重複字符串的的程序類,這種程序類主要是根據時間戳實現一個自動的無重複的的字符串。一般在獲取UUID的時候都是隨機產生的一個內容,所以很少用到構造方法。通常用以下幾種方式來獲取.     獲取UUID對象:pu

原创 sql相關函數學習 原

一、AVG函數 定義和用法: AVG 函數返回數值列的平均值。NULL 值不包括在計算中。 語法: SELECT AVG(column_name) FROM table_name 注意:NULL值不參與運算 二、COUNT()函數 定義

原创 java高級-反射給類的屬性賦值,主要用於繁瑣的getter和setter方法 原

一、討論傳統屬性賦值和反射機制賦值     1.1傳統賦值的弊端         當一個類的屬性非常多的時候,採用傳統賦值方式的話,就會調用大量的setter方法,會存在大量的重複操作。     1.2屬性內容的自動設置思路    1.3

原创 java高級-多線程深入 原

一、優雅的停止線程 開啓線程的方式是:調用Thread中的start()方法,停止線程的方式:原本Thread提供了stop()方法,但是在JDK1.2阪本後就已經被禁用了。除了stop(),還有幾個方法被禁用     例如:     1.

原创 同步類容器和併發類容器總結 原

一、同步類容器 同步類容器都是線程安全的,但是在某些場景下需要加鎖來保護複合操作。複合類操作如:迭代(反覆訪問元素,遍歷完容器中所有的元素)、跳轉(根據指定的順序找到當前 元素的下一個元素)、以及條件運算。這些複合操作在多線程併發修改容器時

原创 java基礎類庫-常見類簡介 原

一、String、StringBuffer、StringBuilder的區別     1.String類是字符串的首選類,其最大的特點是內容不允許修改。     2.StringBuffer和StringBuilder都是可修改的。    

原创 字節流和字符流 原

一、流的基本概念     此處略...... 二、字節輸出流OutputStream【JDK1.0】     API中:     public abstract class OutputStream extends Object mplem

原创 深入理解java AtomicInteger原子類型 轉

一、爲什麼要用到AtomicInteger? 當進行併發編程的時候我們需要保證線程安全,何爲線程安全? 當多個線程訪問某個類時,不管運行時環境採用何種調度方式或者這些線程將如何交替執行,並且在主調代碼中不需要任何額外的同步或協同,這個類都能

原创 Java高級編程-IO操作深入 原

一、字符編碼     實際的開發過程中的常用編碼: GBK/GB2312:國標編碼,可以描述中文信息。 ISO8859-1:國際通用編碼,可以用其描述所有的字母信息。 UNICODE編碼:採用16進制的方式存儲。 UTF編碼:象形文字部分

原创 java高級-反射的三種實例化模式及與工廠,單例模式的的關係 原

一、概述     所謂反射,就是根據實例化對象找到對象的根源。 範例:觀察Class對象的使用 /*根據對象找到對象的根源**/ public class Demo { public static void main(Strin

原创 java高級-多線程綜合案例 原

一、多線程案例分析一:數字加減 設計四個線程,兩個線程相加,兩個線程相減 範例:代碼 public class ThreadDemo5 { public static void main(String[] args) {

原创 單例模式最常用的兩種方式 原

一、靜態內部類(最常用也最簡單) public class Singletion {          private static class InnerSingletion {         private static Sin