1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Deutsch
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

ByteReader/StreamReader usw..

  • sommeralex
  • 7. Februar 2007 um 10:26
  • Unerledigt
  • sommeralex
    11
    sommeralex
    Mitglied
    Punkte
    1.325
    Beiträge
    188
    • 7. Februar 2007 um 10:26
    • #1

    Guten Morgen...

    Ich hab ein Connection Objekt, welches mir eine (funktionierende) Verbindung herstellt. Nun kann man über das Connection Objekt unterschiedliche Typen initialisieren:

    connection.openInputStream();
    connection.openInputStreamReader();
    connection.openDataInputStream();

    theorie: darf man über ein Connection Objekt mehrere Typen initialisieren? Also sowohl openInputStream + openInputStreamReader bzw DataInputStream?

    Meine Verbindung funktioniert über DataInputStream, wenn ich aber zum "mischen" anfange, gibts ein durcheinander.

  • a9bejo
    21
    a9bejo
    Mitglied
    Reaktionen
    42
    Punkte
    4.697
    Beiträge
    913
    • 7. Februar 2007 um 11:30
    • #2

    Hallo

    Kannst du noch dazu sagen um was fuer eine Connection es sich bei Deinem Problem handelt?

    Hab gerade mal in der StandardAPI (1.6) geschaut und die Interfaces java.sql.Connection, java.net.UrlConnection, javax.management.MBeanServerConnection besitzen die von dir angegebenen methoden nicht.


    Meine Annahme ist derzeit, das jede der 3 methoden eine neue Instanz von einem java.io.DataInputStream erstellt.

    d.h. open openInputStream() ist dann einfach nur ein downcast:

    Code
    public InputStream openInputStream(){
      return this.openDataInputStream();
    }

    und openInputStreamReader() ist ein Wrapper:

    Code
    public InputStreamReader openInputStreamReader(){
      return new InputStreamReader(this.openDataInputStream());
    }

    D.h. ob du einen InputStreamReader zusammen mit einem InputStream oeffnest oder stattdessen zwei InputStreamReader sollte egal sein, weil eh immer ein DataInputStream dahintersteckt.

    Das die Methoden "open..." und nicht "get..." heissen laesst darauf schliessen, das wirklich bei jedem Aufruf immer ein neuer Stream instanziert wird.

    Wenn Du jetzt zwei Streams zu demselben Objekt aufmachst, ist es meiner Meinung nach von der Quelle abhaengig was dann passiert. D.h. vielleicht darf immer nur ein Stream offen sein, vielleicht laufen dann einfach zwei parrallel oder vielleicht bekommst du sogar beim zweiten Aufruf den selben stream zurueck wie beim ersten. Eventuell ist auch in der Spezifikation von deinem Connection objekt festgelegt, wie sich diese methoden zu verhalten haben.

    Aber wie schon gesagt, das kommt ganz darauf an was fuer eine Connection das ist bzw. wie sie spezifiziert ist.

    lg, Benjamin Ferrari, bookworm.at

  • sommeralex
    11
    sommeralex
    Mitglied
    Punkte
    1.325
    Beiträge
    188
    • 8. Februar 2007 um 11:04
    • #3

    es handelt sich um j2me..

  • Maximilian Rupp 27. Dezember 2024 um 12:05

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung

  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  • Deutsch
  • English
Zitat speichern