亚洲欧洲国产欧美一区精品,激情五月亚洲色五月,最新精品国偷自产在线婷婷,欧美婷婷丁香五月天社区

      考試首頁 | 考試用書 | 培訓(xùn)課程 | 模擬考場(chǎng) | 考試論壇  
      全國  |             |          |          |          |          |         
        當(dāng)前位置:計(jì)算機(jī)等級(jí) > 二級(jí)考試 > Java語言程序設(shè)計(jì) > 考試輔導(dǎo) > 文章內(nèi)容
        

      全國計(jì)算機(jī)等級(jí)考試二級(jí)Java重點(diǎn)內(nèi)容(4)

      中華IT學(xué)院   【 】  [ 2016年9月17日 ]

        基本類型的序列化 writeInt()  readInt()

        照片的序列化  ImageIO.read()  ImageIO.write()

        1 字符串的序列化 編碼問題

          println()

          readLine()

        2 對(duì)象的序列化

          readObject()

          writeObject()

        常見文本文件讀取方式

        對(duì)象的序列化

        流的總結(jié)

        廣義上: 數(shù)據(jù)轉(zhuǎn)換為byte 序列 都是序列化

        int long 可以序列化 -> 拆分

        String   可以序列化 --> 編碼

        Image    可以序列化(.png) -> 圖片的壓縮格式

        對(duì)象(屬性)可以序列化 對(duì)象編碼為 byte 序列

      7 什么是對(duì)象的序列化: 將Object轉(zhuǎn)換為byte序列,就是序列化,反之叫反序列化

        為什么要序列化: 為了在byte流中存儲(chǔ)對(duì)象

       如何序列化: 使用writeObject(Object)/readObject()

       1) 序列化流, 是過濾流

          ObjectOutputStream writeObject(Object) 序列化對(duì)象

          ObjectInputStream readObject() 對(duì)象的反序列化

       2) 序列化接口: 對(duì)象必須實(shí)現(xiàn)"序列化接口"才能進(jìn)行 "序列化"

         否則出現(xiàn)不能序列化的異常!

       3) JavaBean 規(guī)范, 必須實(shí)現(xiàn)Serializable接口

         Java API中的類大多是Java Bean, 基本都實(shí)現(xiàn)了Serializable

       序列化的應(yīng)用:

      8 淺層復(fù)制與深層復(fù)制

       1) Java的默認(rèn)復(fù)制規(guī)則是淺層復(fù)制, 性能好, 隔離性差

         淺層復(fù)制現(xiàn)象, 只復(fù)制第一層對(duì)象

       2) 利用序列化實(shí)現(xiàn)深層復(fù)制

      .Java IO 總結(jié)

       1)是一種數(shù)據(jù)操作模型: 把任何數(shù)據(jù)都作為Byte的有序集合看待

        逐一處理的方式方式叫做流.

        Java 流模型, 是byte by byte 是數(shù)據(jù)集合

         data   :  41 42 00 00 ff ff d6 d0

         index  :   0  1  2  3  4  5  6  7  8

         pointer:   ^

          RandomAccessFile 只能操作文件, 只能處理基本類型

         節(jié)點(diǎn)流: 流開始和結(jié)束的地方

        過濾器: 基本流的功能擴(kuò)展

        字節(jié)流: 每次處理一個(gè)byte

        字符流: 每次出來一個(gè)char

        ObjectInputStream in = new ObjectInputStream(new CipherInputStream(new FileInputStream(file)));

        Object obj = in.readObject();

        CipherInputStream in = new CipherInputStream(new FileInputStream(file));

        img = ImageIO.read(in);

         裝飾器模式: 流的API是按照裝飾器模式設(shè)計(jì)的

        InputStream 最基本的輸入流操作模型, 是抽象類(read()是沒有實(shí)現(xiàn)的)

        |-- FileInputStream 實(shí)現(xiàn)了在文件上讀取的方法 read(), 節(jié)點(diǎn)流

        |-- ByteArrayInputStream 實(shí)現(xiàn)了在數(shù)組里讀取的方法 read()

        |-- FilterInputStream 過濾流,包裝在一個(gè)基本流外部,提供功能擴(kuò)展

        |    |-- DataInputStream 為基本流擴(kuò)展了基本數(shù)據(jù)類型讀取

        |    |    readInt() readDouble()...方法的底層是read()

        |    |-- BufferedInputStream 為基本流提供緩沖處理

        |    |-- CipherInputStream 解密輸入流, 知道就行

        |    |-- ZipInputStream 解壓輸入流, 知道就行

        |-- ObjectInputStream 對(duì)象輸入流, 也是過濾器

       

       OutputStream 最基本的輸出流操作模型,是抽象類(write()是沒有實(shí)現(xiàn)的)

        |-- FileOutputStream 實(shí)現(xiàn)了在文件上寫出的方法 write(), 節(jié)點(diǎn)流

        |-- ByteArrayOutputStream 在變長(zhǎng)數(shù)組上實(shí)現(xiàn)了write() 方法

        |-- FilterOutputStream

        |    |-- DataOutputStream 基本類型輸出

        |    |

        |    |-- BufferedOutputStream 緩沖輸出

        |    |-- CipherOutputStream 加密輸出

        |    |-- ZipOutputStream 壓縮輸出

        |-- ObjectOutputStream 對(duì)象輸出流

       

       字符流, 每次處理一個(gè)字符

       Reader 抽象類, 定義了抽象方法read(), 每次讀取一個(gè)字符

        |-- InputStreamReader 也是過濾器, 將byte序列解碼為char序列

        |      底層也是依賴基本的byte輸入流

        |-- BufferedReader (Scanner) 是字符流過濾器,

        |     有常用的文本讀取方法readLine()

        |-- FileReader 底層是 FileInputSream + InputStreamReader

        |     不能指定讀取文件的字符編碼

      首頁 1 2 3 尾頁
      分享到:
      本文糾錯(cuò)】【告訴好友】【打印此文】【返回頂部
      將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動(dòng)訪問考試網(wǎng) | 復(fù)制本頁地址,傳給QQ/MSN上的好友 | 申請(qǐng)鏈接 | 意見留言 TOP
      關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
      Copyright © 2007-2013 中華考試網(wǎng)(Examw.com) All Rights Reserved