Java之IO類的體繫結構

來源:互聯網
上載者:User

標籤:

Java中IO操作主要是指使用Java進行輸入,輸出操作,Java中所有的操作類都存放在Java.io包中,在使用時需要匯入此包。

   在整個Java.io包中最重要的就是5個類和一個介面。5個類指的是File、OutputStream、InputStream、Writer、Reader;一個介面指的是Serializable.掌握了這些IO的核心操作那麼對於Java中的IO體系也就有了一個初步的認識了。

   一、java.io包中流的分類

     Java.io包中定義了多個流類型類實現輸入輸出的功能,從不同的角度可以分為:

  ~按照資料流方向的不同可以分為輸入資料流輸出資料流

  ~按照按照資料處理單位的不同可以分為位元組流字元流

    J2Sdk所提供的所有流類型位於Java.io包內部分別都繼承以下四種抽象流類型,

二、Java中IO流的體繫結構

  下面根據資料處理單位不同來分析Java中流的體繫結構

  

三、IO流中5大類的特徵

    1、InputStream

    InputStream  為位元組輸入資料流,它本身為一個抽象類別,必須依靠其子類實現各種功能,此抽象類別是表示位元組輸入資料流的所有類的超類。 繼承自InputStream  的流都是向程式中輸入資料的,且資料單位為位元組(8bit);下面是InputStream所屬的子類:  

~ FileInputStream :  從檔案系統中的某個檔案中獲得輸入位元組。哪些檔案可用取決於主機環境。FileInputStream 用於讀取諸像資料之類的原始位元組流。

  2、OutputStream

        為位元組輸出資料流,是整個IO包中位元組輸出資料流的最大父類,OutputStream類也是一個抽象類別,要使用此類必須通過子類執行個體化對象。

   其子類有:

3、Writer

       寫入字元流的抽象類別。子類必須實現的方法僅有 write(char[], int, int)、flush() 和 close()。但是,多數子類將重寫此處定義的一些方法,以提供更高的效率和/或其他功能。 其子類如下:

 ~BufferedWriter   :

將文本寫入字元輸出資料流,緩衝各個字元,從而提供單個字元、數組和字串的高效寫入。

可以指定緩衝區的大小,或者接受預設的大小。在大多數情況下,預設值就足夠大了。

 

4、Reader

   用於讀取字元流的抽象類別。子類必須實現的方法只有 read(char[], int, int) 和 close()。但是,多數子類將重寫此處定義的一些方法,以提供更高的效率和/或其他功能。 子類有:

Java之IO類的體繫結構

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.