Java培訓總結筆記(四)

2021-07-26 00:01:28 字數 3037 閱讀 1290

1.位元組流

主要操作byte型別資料,以byte陣列為準,一次讀入或讀出是8位二進位制,主要操作類有位元組輸入流(inputstream)和位元組輸出流(outputstream)兩個抽象類,面向裝置寫入,無緩衝區。

**示例:

/**

* 位元組流讀取檔案

*@throws ioexception

*/private static

void readtest() throws ioexception

/*** 位元組流讀取檔案

*@throws ioexception

*/private static

void readtest() throws ioexception

}

2.字元流

主要操作字元型別資料,一次讀入或讀出是16位二進位制,主要操作類有字元輸入流(reader)和字元輸出流(writer),面向緩衝區操作,可以用flush()方法。

**示例:

public

static

void

writetest() throws ioexception

3.緩衝流

緩衝流增強了讀寫檔案的能力,避免乙個乙個地讀寫,會將內容先放置在記憶體中,有一定資料量時再進行操作。

**示例:

/**

* 緩衝字元流讀取操作

*@throws ioexception

*/public

static

void

buffertest() throws ioexception

4.轉換流

轉換流是位元組流和字元流之間的橋梁,可對讀取到的位元組資料經過指定編碼轉換成字元,也可將讀取到的字元資料經過指定編碼轉換成位元組,一般用於將你建立的流直接轉換為writer的流,寫入字元或者字串。

**示例:

/**

* 轉換流

*@throws ioexception

*/public

static

void

outputstreamwriter() throws ioexception

5.物件流

用於寫入物件的資訊和讀取物件的資訊,將物件以檔案的形式寫入磁碟裡儲存起來。

**示例:

public

static

void

objecttext() throws ioexception, classnotfoundexception

1.併發和並行

併發:在同一時刻,多件事情一定不是同時進行的。(輪流執行)

並行:在同一時刻,多件事情一定同時進行。

2.程序與執行緒的概念

程序:每個執行中的程式就是乙個程序,windows任務管理器上可以看到每乙個程序,linux下使用ps –e命令可以檢視當前執行的所有程序。

執行緒:每個執行的程式(程序)內部可能會包含多個順序執行流,每個執行流就可以看做執行緒。

3.建立並啟動執行緒

建立執行緒的兩種方式:

(1)繼承thread類

public

class

threada

extends

thread

public

void

run()

}public

class

threadb

extends

thread

public

void

run()

}public

class

xiancheng

}

(2)建立threadtask類,實現runnable介面,重寫run方法,代表執行緒要進行的任務

public

class

threadtask

implements

runnable

}public

class

xiancheng

}

啟動執行緒:

//兩線程執行同乙個任務

public

class

threadtask

implements

runnable }}

}public

class

xiancheng

}

4.同步鎖

即synchronized關鍵字,用來修飾乙個方法或者一段**塊時,可保證同一時間只有乙個執行緒執行該段**。要注意:

(1)當兩個併發執行緒訪問同乙個物件object中的這個synchronized(this)同步**塊時,乙個時間內只能有乙個執行緒得到執行。另乙個執行緒必須等待當前執行緒執行完這個**塊以後才能執行該**塊。

(2)然而,當乙個執行緒訪問object的乙個synchronized(this)同步**塊時,另乙個執行緒仍然可以訪問該object中的非synchronized(this)同步**塊。

(3)尤其關鍵的是,當乙個執行緒訪問object的乙個synchronized(this)同步**塊時,其他執行緒對object中所有其它synchronized(this)同步**塊的訪問將被阻塞。

(4)第三個例子同樣適用其它同步**塊。也就是說,當乙個執行緒訪問object的乙個synchronized(this)同步**塊時,它就獲得了這個object的物件鎖。結果,其它執行緒對該object物件所有同步**部分的訪問都被暫時阻塞。

(5)以上規則對其它物件鎖同樣適用。

5.執行緒的狀態

Java培訓總結筆記(二)

一 collection介面 collection是最基本的集合介面,用api文件的話說,是層次結構中的根介面。collection表示一組物件,這些物件也稱為collection的元素。collection最常用的子介面有list介面和set介面。1.list介面 list介面是有序的collec...

Java培訓筆記二

也是借的同學的筆記,免費培訓時候的。2009 6 25 通配 新增insert into student studentno,studentname,student studentmajor,studentgrade,studentaddress,values 6 caicai 女 insert i...

培訓筆記之java 二

第二天 i.判斷是不是數字的幾種方法 1 string score joptionpane.showinputdialog 請輸入數字 char scorearray score.tochararray for int i 0 i 9 scorearray i 0 2 正規表示式 public bo...