IOStreams read(byte[]b) methode

Taso44

Aktives Mitglied
Hallo zusammen,
ich hätte eine Frage zur Methode von den I/O-Streams. Es geht um die Mehtode " int read(byte[]b).
In unserer Vorlesung wurde gefragt, wieso ein int zurückkommt und was diese Methode mit Referenzen zu tun hat.
Ich habe die Antwort nicht verstehen können (auch mit nachfragen...).
Was ich darüber denke ist, dass das Dokument z.B. welche eingelesen werden soll im Heap liegt, die Referenz davon auf dem Stack.
Auch das byteArray b liegt auf dem Heap und die Referenz wiederrum auf dem Stack.
Aber was da sonst mit Referenzen gemeint ist, weiß ich nicht. Aber vielleicht seht ihr ja einen Zusammenhang
Danke sehr
 

KonradN

Super-Moderator
Mitarbeiter
Also erst einmal klingt da vieles extrem dubios. Der Methode wird ein Array von bytes übergeben. Arrays sind in Java ein Referenztyp. Damit wird das Array, das da verwendet wird, benutzt. Wo dieses Array genau liegt, ist dabei erst einmal irrelevant und ist auch so nicht spezifiziert.
Da aber ein Array übergeben wird und da dann Werte hinein geschrieben werden, braucht man noch irgendwo die Information, wie viele Bytes denn nun gelesen wurden. Dazu dient dann die Rückgabe des int Wertes.

Was ich darüber denke ist, dass das Dokument z.B. welche eingelesen werden soll im Heap liegt, die Referenz davon auf dem Stack.
Wo die Daten genau herkommen ist doch absolut uninteressant. Und nur aus der Information, dass es ein (Input)Stream ist und es um den Aufruf der read Methode geht, kann man da auch nichts draus ableiten. Alles, was wir haben und was uns interessiert ist die Methode, die aufgerufen wird und von der kennen wir die Beschreibung.
Auch das byteArray b liegt auf dem Heap und die Referenz wiederrum auf dem Stack.
Wo das byte Array liegt ist doch erst einmal egal. Ebenso, wo die Referenz liegt. Da wir nicht wissen, wo und wie da etwas deklariert wurde, kann man dazu auch nichts sagen. Was wir aber wissen:
a) Arrays in Java sind Referenz Typen
b) Die Parameter werden kopiert und übergeben. Ob dies aber nun per Stack funktioniert oder ob da ggf. irgend etwas optimiert wird, ist da erst einmal egal (Es sei denn, ihr sprecht über den prinzipiellen Aufbau - dann werden Parameter auf den Stack gelegt).

Wichtig ist hier halt aus meiner Sicht (so ich die Fragestellung richtig verstanden habe):
  • Arrays sind Referenztypen. Damit wird das Array selbst verändert.
  • der int ist wichtig, damit klar ist, was gelesen wurde. Das Array ändert sich ja nicht von der Größe her ...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
berserkerdq2 IOstreams, was unterscheidet file von z. B. BufferedWriter? Java Basics - Anfänger-Themen 11
M NullPointerException: Cannot read the array length because "this.Kinder" is null Java Basics - Anfänger-Themen 1
josfe1234 Hilfe access denied ("java.io.FilePermission" " " "read") Java Basics - Anfänger-Themen 12
C System.in.read() Boolsche Werte vergleichen Java Basics - Anfänger-Themen 8
J Variablen Komsiche System.in.read() return-value? Java Basics - Anfänger-Themen 3
N Threads Read-Modify-Write Problem bei Multithreading (philosopher dining problem) Java Basics - Anfänger-Themen 5
V FileInputStream - read() Java Basics - Anfänger-Themen 2
W Input/Output System.in.read erzeugt nicht, was ich will Java Basics - Anfänger-Themen 1
C Input/Output System.in.read() gibt nicht -1 zurück? Java Basics - Anfänger-Themen 3
F Input/Output Blocking file read erzeugen Java Basics - Anfänger-Themen 0
G Thread stoppen mit System.in.read() Java Basics - Anfänger-Themen 13
G comport read Java Basics - Anfänger-Themen 3
B Frage zur Effizienz von read und read(byte[]) Java Basics - Anfänger-Themen 23
S Java für Anfänger: Probleme mit read() Java Basics - Anfänger-Themen 20
G Input/Output System.in.read & Scanner Java Basics - Anfänger-Themen 2
S Eigener InputStream, Hilfe bei read-Methode Java Basics - Anfänger-Themen 6
L Fehler bei "read" ? Java Basics - Anfänger-Themen 4
R ImageIO.read Fehler Java Basics - Anfänger-Themen 4
K Input/Output read/write Java Basics - Anfänger-Themen 15
B Threads Interrupt während Socket.read()? Java Basics - Anfänger-Themen 3
G Problem mit Image.IO.read( File ) Java Basics - Anfänger-Themen 3
C FileInputStream read() Overflow Problem Java Basics - Anfänger-Themen 6
W Koordinaten mit System.in.read() setzen Java Basics - Anfänger-Themen 2
W file read write crash Java Basics - Anfänger-Themen 2
L Read.java Java Basics - Anfänger-Themen 4
F FileReader Methode Read() int? Java Basics - Anfänger-Themen 2
H int : never read - Fehler Java Basics - Anfänger-Themen 3
U Inputstream.read()/readLine() blockiert immer Java Basics - Anfänger-Themen 18
S access denied (java.io.FilePermission read) Java Basics - Anfänger-Themen 3
E Read a file in a package Java Basics - Anfänger-Themen 2
S System.in.read() Java Basics - Anfänger-Themen 2
G Verständnisfrage read() und readLine() Java Basics - Anfänger-Themen 6
C System.in.read() funktioniert nicht Java Basics - Anfänger-Themen 3
G unterschied zwischen in.read() und in.read(byte [] b, int. Java Basics - Anfänger-Themen 3
J System.in.read(): Unhandled exception type IOException Java Basics - Anfänger-Themen 12
P Read, Readline ? Java Basics - Anfänger-Themen 2
B System.in.read() wird übersprungen Java Basics - Anfänger-Themen 5
S System.in.read() mehrmals nacheinander aufrufen Java Basics - Anfänger-Themen 3
F Read access to enclosing field xy is emulated . Java Basics - Anfänger-Themen 2
R frage zur read()-Methode des BufferedReader Java Basics - Anfänger-Themen 2
M Streams, read and write Java Basics - Anfänger-Themen 2
J Wie geht out.read ? Java Basics - Anfänger-Themen 4
L read() (von bufferedReader) abbrechen Java Basics - Anfänger-Themen 5
L unterbrechen von bufferedReader.read() Java Basics - Anfänger-Themen 4
G System.in.read() wartet nicht auf eingabe Java Basics - Anfänger-Themen 1
M FileReader.read(char[]) - Größe des Arrays? Java Basics - Anfänger-Themen 4
R FileInputStream.read() != FileReader.read(). Pls Help Java Basics - Anfänger-Themen 5
D Text-Datei(en) mit der Methode read(bytes[] b) auslesen Java Basics - Anfänger-Themen 4
B Probleme mit Eingaben [System.in.read())] Java Basics - Anfänger-Themen 10
J Keyboard.read... Java Basics - Anfänger-Themen 4
T Anfänger: cannot read: error 1 Java Basics - Anfänger-Themen 8
C Probleme mit Byte konvertieren nach int Java Basics - Anfänger-Themen 10
I Dateigröße von einem InputStream oder byte[] bekommen Java Basics - Anfänger-Themen 2
krgewb byte-Array, das ein Bild repräsentiert Java Basics - Anfänger-Themen 1
G ImageIcon in Byte-Array ablegen Java Basics - Anfänger-Themen 7
D Best Practice Parameter int vs byte Java Basics - Anfänger-Themen 16
J RSA Verschlüsselung Testen / byte[] in Objekt umwandeln Java Basics - Anfänger-Themen 1
S Byte-Array kann chars speichern? Java Basics - Anfänger-Themen 3
N Datentypen Image zu Byte-Array Java Basics - Anfänger-Themen 4
M Datentypen Byte, Float und Boolean Java Basics - Anfänger-Themen 13
F byte, short oder doch int? Java Basics - Anfänger-Themen 6
S Performance von byte[], short[], int[]..? Java Basics - Anfänger-Themen 24
D Methoden int to byte array und zurück? Java Basics - Anfänger-Themen 5
P int zu byte Java Basics - Anfänger-Themen 8
F Byte Array wachsen lassen Java Basics - Anfänger-Themen 5
M Java Klasse Byte Java Basics - Anfänger-Themen 10
F Byte Ausgabe plötzlich falsch Java Basics - Anfänger-Themen 0
V String in Byte umwandeln Java Basics - Anfänger-Themen 11
O Input/Output Ein (negatives) Byte über PrintWriter hinausschreiben Java Basics - Anfänger-Themen 3
T byte[] zu String mit Sonderzeichen Java Basics - Anfänger-Themen 2
W Nullpointer bei Objekt Serialisierung mit ArrayList<byte[]> etc. Java Basics - Anfänger-Themen 2
J byte - Ausgabe Java Basics - Anfänger-Themen 2
F Teil eines Byte Array an eine Methode übergeben Java Basics - Anfänger-Themen 5
S byte to float Java Basics - Anfänger-Themen 4
J Byte Folge erkennen Java Basics - Anfänger-Themen 5
M sehr großes Byte Array Java Basics - Anfänger-Themen 3
M Byte Array und Co. Java Basics - Anfänger-Themen 12
T Operatoren Float in byte umwandeln Java Basics - Anfänger-Themen 3
Y File to byte[] and byte[] to sysout Java Basics - Anfänger-Themen 3
P Wann Byte-Stream und wann Character-Stream? Java Basics - Anfänger-Themen 11
F Hexfolge in Byte Array ersetzen Java Basics - Anfänger-Themen 8
P String in byte konvertieren, wie? Java Basics - Anfänger-Themen 4
T Erste Schritte Byte Java Basics - Anfänger-Themen 3
R byte[] zu String und Ausgabe Java Basics - Anfänger-Themen 2
H Variablen short <-> byte[] Java Basics - Anfänger-Themen 15
X Datentypen String in byte[] Java Basics - Anfänger-Themen 29
H Variablen 32bit Zählwert als Byte-Array Java Basics - Anfänger-Themen 9
H Variablen string nach byte Java Basics - Anfänger-Themen 12
R Erste Schritte Rechnenoperationen mit byte, short und char Java Basics - Anfänger-Themen 8
V Datentypen Frage zum Datentyp Byte Java Basics - Anfänger-Themen 11
L Byte[] to String, doch bits sind gespiegelt (MSB/LSB) Java Basics - Anfänger-Themen 3
S Von byte[] nach String zurueck nach byte[]. Arrays sind nicht identisch :( Java Basics - Anfänger-Themen 6
S ArrayList<Byte> in String umwandeln Java Basics - Anfänger-Themen 5
V unsigned byte? Java Basics - Anfänger-Themen 27
M byte Array Mindestlänge Java Basics - Anfänger-Themen 19
U short[] nach byte[] Java Basics - Anfänger-Themen 11
D [jni] jbytearray <-> byte array Java Basics - Anfänger-Themen 8
S Datentypen Ändern eines byte[] Arrays Java Basics - Anfänger-Themen 4
B byte-weise Verschlüsselung Java Basics - Anfänger-Themen 6
P byte Array aus ImageIcon Java Basics - Anfänger-Themen 10

Ähnliche Java Themen

Neue Themen


Oben