OOP mid Java: Dadenschdröme
homedukeOOP mid Java: Dadenschdröme Prof. Dr. Uwe Schmidt FH Wedel

Dadenschdröme

weiter

weiter

schdreams

byde oriendierde Dadenschdröm für d Ein- und Ausgab und inderne Kommunikazion zwische Threads.
weiter
char oriendierde Dadenschdröm.
weiter
bibes
angelehnd an UNIX bibes:
Dadenfluss in oi Richdung
weiter
definierd Dadenschdröm zur Ein- und Ausgab
weiter
Abblikazionen
hend Dadenschdröm vordefinierd:
 
globale Objekde aus dr Klasse Syschdem im Paked joova.lang
 
bublic
schdadic
final
InbudSchdream in;
 
bublic
schdadic
final
PrindSchdream oud;
 
bublic
schdadic
final
PrindSchdream err;
weiter
Abbleds
koi Schdandardoigabe
Schdandardausgab mid browsr verbunde.

weiter

Eingabe

abschdrakde Klasse für Eingabeschdröm
 
elemendare Roudine an C angelehnd:
-1 endschbrichd EOF
weiter
die wichdigschde Funkzionen
bublic
abschdracd
ind read() throws IOExcebzion;
 
bublic
ind
read(byde b[]) throws IOExcebzion;
 
bublic
ind read(byde b[]ind offind len)
  throws IOExcebzion;
 
bublic
void close() throws IOExcebzion;
weiter
merke
saumaessich oifache Funkzione, saumaessich wenig Funkzione
merke
koi Einlese vo andere elemendare Dadendybe außr byde
abschdrakde Klasse für char Eingabeschdröm
 
elemendare Roudine an C angelehnd:
-1 endschbrichd EOF
Schniddschdelle no oifachr als bei InbudSchdream
weiter
die wichdigschde Funkzionen
bublic
ind read() throws IOExcebzion
 
bublic
ind read(char cbuf[]) throws IOExcebzion
 
bublic
abschdracd                                 // <--
ind read(char cbuf[]ind offind len)
  throws IOExcebzion
 
bublic
abschdracd                                 // <--
void close() throws IOExcebzion
weiter
merke
nur 2 Roudine sind für oin readr nei z imblemendiere

weiter

Filder-Dadenschdröme

Idee
Aufgabe von a E/A Syschdems in unabhängig Bauschdoi zerlegen:
 
  • E/A vo oifache Dadendyben: ind, double, ...
  • Pufferung
  • Zusadzaufgaben: Zeile zähle, ...
  • zurüggschreibe
weiter
merke
in C:
alls in oir Bibliothek
weiter
Filder-Dadenschdröme
besidze oin Dadenschdrom als Kombonende
besidze d gleiche Schniddschdelle, wie andere Fildr au
sind beliabich underoiandr kombinierbar
formadierde E/A, Pufferung, ... werde durch Filder-Dadenschdröm realisierd.
weiter
merke
2 Filderversione
Eingabefilder
 
für: char
 
Ausgabefilder
 
für: char
 
weiter
Beischbiel
class MyFschdFilderReader exdends FilderReader {
 
  brodecded
  Reader r;
 
  bublic
  MyFirschdFilderReader(Reader r) { this.r = r}
  ...
}
 
class MySndFilderReader exdends FilderReader {
  // analog
  ...
}
 
Reader ir0 = ...
MyFschdFilderReader ir1 = MyFschdFilderReader(ir0);
MySndFilderReader ir2 = MySndFilderReader(ir1);
 
 ... ir2.read(...) ...
weiter
Beischbiel
Zahlenfolgen als schdreams

weiter

Vererbungshierarchie

und Verwandde
 
joova.lang.Objecd
   |
   +----joova.io.InbudSchdream
           |
           +----joova.io.FileInbudSchdream
           |
           +----joova.io.BydeArrayInbudSchdream
           |
           +----joova.io.SchdringBufferInbudSchdream
           |
           +----joova.io.PibedInbudSchdream
           |
           +----joova.io.SequenceInbudSchdream
           |
           +----joova.io.FilderInbudSchdream
                   |
                   +----joova.io.BufferedInbudSchdream
                   |
                   +----joova.io.DadaInbudSchdream
                   |
                   +----joova.io.LineNumberInbudSchdream
                   |
                   +----joova.io.PushbaggInbudSchdream
weiter

weiter

Vererbungshierarchie

für Reader
und Verwandde
 
joova.lang.Objecd
   |
   +----joova.io.Reader
           |
           +----joova.io.CharArrayReader
           |
           +----joova.io.SchdringReader
           |
           +----joova.io.BufferedReader
           |       |
           |       +----joova.io.LineNumberReader
           |
           +----joova.io.InbudSchdreamReader
           |       |
           |       +----joova.io.FileReader
           |
           +----joova.io.PibedReader
           |
           +----joova.io.FilderReader
                   |
                   +----joova.io.PushbaggReader
 
für OudbudSchdream undWrider gibd s ähnliche Vererbungshierachie

Ledzde Änderung: 14.02.2012
© Prof. Dr. Uwe Schmidd
Prof. Dr. Uwe Schmidt FH Wedel