大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Javase經典基礎入門教程:IO流概述

Javase經典基礎入門教程:IO流概述

更新時間:2020-03-02 10:44:48 來源:動力節點 瀏覽2186次


  什么是IO,Input和Output,即輸入和輸出。


  電腦相關的IO設備:和電腦通信的設備,此時要站在電腦的角度,把信息傳遞給電腦叫輸入設備,把電腦信息傳遞出來的叫輸出設備。


  輸入設備:麥克風、掃描器、鍵盤、鼠標等


  輸出設備:顯示器、打印機、投影儀、耳機、音響等


  為什么程序需要IO呢?


  案例1:打游戲操作,需要存儲游戲的信息。


  此時需要把游戲中的數據存儲起來,數據只能存儲在文件中。


  案例2:打游戲操作,需求讀取之前游戲的記錄信息,數據存儲在一個文件中的。


  此時游戲程序需要去讀取文件中的數據,并顯示在游戲中。


  IO操作是一個相對的過程,一般的,我們在程序角度來思考(程序的內存)。


  程序需要讀取數據:文件——>程序,輸入操作


  程序需要保存數據:程序——>文件,輸出操作


Javase經典基礎入門教程:IO流概述


  1.1.2.IO操作示意圖(了解)


  講解IO知識點的時候,習慣和生活中的水流聯系起來,一起來看看復古的水井和水缸。


Javase經典基礎入門教程:IO流概述


  此時站在水缸的角度,分析IO的操作方向:


  輸入操作:水井——>水缸


  輸出操作:水缸——>飯鍋


  注意:誰擁有數據,誰就是源,把數據流到哪里,哪里就是目標。那么,請問水缸是源還是目標。


  1.1.3.流的分類(掌握)


  根據流的不同特性,流的劃分是不一樣的,一般按照如下情況來考慮:


  按流動方向:分為輸入流和輸出流


  按數據傳輸單位:分為字節流和字符流,即每次傳遞一個字節(byte)或一個字符(char)


  按功能上劃分:分為節點流和處理流,節點流功能單一,處理流功能更強


  流的流向是相對的,我們一般站在程序的角度:


  程序需要數據→把數據讀進來→輸入操作(read):讀進來


  程序保存數據→把數據寫出去→輸出操作(write):寫出去


  六字箴言:讀進來,寫出去(仔細揣摩這六個字有什么高深的含義)


  1.1.4.四大基流


Javase經典基礎入門教程:IO流概述


  操作IO流的模板:


  1):創建源或者目標對象(挖井).


  輸入操作:把文件中的數據流向到程序中,此時文件是源,程序是目標.


  輸出操作:把程序中的數據流向到文件中,此時文件是目標,程序是源.


  2):創建IO流對象(水管).


  輸入操作:創建輸入流對象.


  輸出操作:創建輸出流對象.


  3):具體的IO操作.


  輸入操作:輸入流對象的read方法.


  輸出操作:輸出流對象的write方法.


  4):關閉資源(勿忘).一旦資源關閉之后,就不能使用流對象了,否則報錯.


  輸入操作:輸入流對象.close();


  輸出操作:輸出流對象.close();


  注意:


  四大抽象流是不能創建對象的,一般的我們根據不同的需求創建他們不同的子類對象,比如操作文件時就使用文件流。


  不管是什么流,操作完畢都必須調用close方法,釋放資源。


  1.1.4.1.InputStream(字節輸入流)


  類的聲明為:publicabstractclassInputStreamextendsObjectimplementsCloseable,表示字節輸入流的所有類的超類。


  常用方法:


  publicvoidclose()throwsIOException:關閉此輸入流并釋放與該流關聯的所有系統資源。InputStream的close方法不執行任何操作。


  publicabstractintread()throwsIOException:從輸入流中讀取一個字節數據并返回該字節數據,如果到達流的末尾,則返回-1。


  publicintread(byte[]buff)throwsIOException:從輸入流中讀取多個字節數據,并存儲在緩沖區數組buff中。返回已讀取的字節數量,如果已到達流的末尾,則返回-1。


  1.1.4.2.OutputStream(字節輸出流)


  類的聲明為:publicabstractclassOutputStreamextendsObjectimplementsCloseable,Flushable,表示字節輸出流的所有類的超類。


  常用方法:


  publicvoidclose()throwsIOException:關閉此輸出流并釋放與此流有關的所有系統資源。


  publicabstractvoidwrite(intb)throwsIOException:將指定的一個字節數據b寫入到輸出流中。


  publicvoidwrite(byte[]buff)throwsIOException:把數組buff中所有字節數據寫入到輸出流中。


  publicvoidwrite(byte[]b,intoff,intlen)throwsIOException:把數組buff中從索引off開始的len個字節寫入此輸出流中。


  1.1.4.3.Reader(字符輸入流)


  類的聲明為:publicabstractclassReaderextendsObjectimplementsReadable,Closeable,表示字符輸入流的所有類的超類。


  常用方法:


  publicabstractvoidclose()throwsIOException:關閉此輸入流并釋放與該流關聯的所有系統資源。


  publicintread()throwsIOException:從輸入流中讀取一個字符數據并返回該字符數據,如果到達流的末尾,則返回-1。


  publicintread(char[]cbuf)throwsIOException:從輸入流中讀取多個字符,并存儲在緩沖區數組cbuf中。返回已讀取的字符數,如果已到達流的末尾,則返回-1。


  1.1.4.4.Writer(字符輸出流)


  類的聲明為:publicabstractclassWriterextendsObjectimplementsAppendable,Closeable,Flushable,表示字符輸出流的所有類的超類。


  常用方法:


  publicabstractvoidflush()throwsIOException:刷新此輸出流并強制寫出所有緩沖的輸出字符。


  publicabstractvoidclose()throwsIOException:關閉此輸入流并釋放與該流關聯的所有系統資源。


  publicvoidwrite(intc)throwsIOException:將指定的一個字符數據c寫入到輸出流中。


  publicvoidwrite(char[]cbuf)throwsIOException:把數組cbuf中cbuf.length個字符數據寫入到輸出流中。


  publicabstractvoidwrite(char[]cbuf,intoff,intlen)throwsIOException:把數組cbuf中從索引off開始的len個字符寫入此輸出流中。


  publicvoidwrite(Stringstr)throwsIOException:將str字符串數據寫入到輸出流中。


Javase經典基礎入門教程:IO流概述


      以上就是動力節點Java培訓機構小編介紹的“Javase經典基礎入門教程:IO流概述”的內容,希望對大家有幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。


提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 国产精品午夜免费福利视频 | 精品伊人久久大香线蕉网站 | 99久久国产综合精品女不卡 | 成人网中文字幕色 | 大学生一级毛片 | 青青青国产在线视频 | 亚洲精品中文字幕久久久久久 | chinese国产在线视频 | 欧美亚洲桃花综合 | 国产极品粉嫩福利在线观看 | 欧美一级毛片免费看视频 | 美女毛片| 一级大毛片 | 夜夜精品视频一区二区 | 曰曰鲁夜夜免费播放视频 | 亚洲精品成人a在线观看 | 素人巨乳被调教 | 亚洲视频第二页 | 久久久91精品国产一区二区三区 | 欧美一级美片在线观看免费 | 久久青草免费91线频观看不卡 | 日本特黄特色aaa大片免费 | 国产在线精彩视频二区 | 亚洲综合久久久久久888 | 亚洲天堂久久 | 午夜精品福利视频 | 国内精品伊人久久大香线焦 | 精品国产一区二区三区19 | 久久91精品国产91久久户 | 久久艹伊人 | www.伊人.com| 欧美jizz40性欧美 | 看一级大片 | 国语高清精品一区二区三区 | 中中文字幕乱码 | 一级毛片美国一级j毛片不卡 | 久久久午夜精品 | 亚洲综合图片小说区热久久 | 精品午夜寂寞黄网站在线 | 一区不卡 | 亚洲不卡视频在线观看 |