我試圖寫入我的輸入流,它擴展了InputStream並學習瞭如下內容InputStream中的read()api如何工作?
輸入流是一個抽象類,它包含抽象方法和實現它的某些方法。注意到InputStream包含抽象方法
public abstract int read() throws IOException;
我不太確定這種方法的用處。因此,轉介延伸的InputStream一些其它InputStream和得到FilterInputStream
延伸InputStream
在這個read方法的實現是像
public int read() throws IOException {
return in.read();
}
in
這裏指的是底層輸入流。考慮FilterInputStream
構造這就好比
protected FilterInputStream(InputStream in) {
this.in = in;
}
在read()方法實現這個簡單的調用read方法中是InputStream
這僅僅是一個抽象的方法,它的父類。
- InputStream中的read()方法的作用是什麼?
- 當我調用FSDataInputStream的讀取方法時會發生什麼?
- 我們在這裏添加read()方法只是爲了避免編譯錯誤?或者我們有其他用途嗎?
我很困惑這些。請幫助我瞭解它。
1.閱讀javadoc。 2.閱讀javadoc。 3.閱讀javadoc。認真閱讀javadoc。 InputStream的全部要點是能夠從字節流中讀取字節。 read()是**這樣做的方法:它讀取InputStream的字節流中的下一個字節。 –
閱讀javadocs @JBNizet我仍然不清楚....如果read()方法從輸入流讀取數據它讀多少?它會從輸入流中讀取整個數據嗎? – lsof
如果您沒有閱讀方法,輸入是什麼? – EJP