Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

Martin Häcker/Java Kurs/Tag 2

Version vom 23. Februar 2006, 17:15 Uhr von Buchholz (Diskussion)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

LE 3: Verfeinerung Java und Klassenbibliothek

Inhalt

Java

  • Methoden-Nachtrag
    • Methoden als Abstraktionsmöglichkeiten -> verstecken von methoden [1] Bringts das an der stelle?
    • Referenzen (Pointer)
    • insb: Referenzen sind nicht Kopien
    • Overloading
    • Standardmethoden: toString, ...
  • Modularisierung in Java: Klassen und Objekte
    • Instanziierung
  • Type Casting einfacher Basistypen


  • Java-API: Konzept Klassenbibliothek
    • Javadocs finden, lesen
  • JavaDoc selber schreiben und verwenden -> http://www.javadocs.org
  • Input/Output (Streams, usw.) <-- großer Block
    • List, ArrayList, InputReader, BufferedReader, Scanner
    • Collections, Enumerations

Übungsaufgaben

  • Selbst Klassen schreiben
  • Klassen benutzen:
    • Input/Output üben
    • Viele andere Klassen aus der Java-API finden und nutzen
    • Praktische Vorgehensweise, Anleitung zum Selbstlernen, nicht so viel Vorlesung dazu
  • Menü Objekt, das sich leicht adaptieren lässt?
  • Apfelbaum
while (hatApfelbaumNochÄpfel) {
	pflückEinenApfelUndEssIhn();
}

LE 4: Wir sind alle nur Objekte

Inhalt

Java

Objektorientierung (Erklärungsansatz)

  • Objekt, Klasse erklären als: "Klasse" Mensch
    • davon dann klonen mit bestimmten Modifikationen (augenfarbe, größe, name....)
    • das wäre dann klasse, objekte und konstruktoraufruf
  • Objekte / Klassen erklären als
    • Platonische Ideen (Pferd)
    • Tatsächliches Ding (Bruno auf dem ich jeden Dienstag in Hellersdorf reite)
  • Objekte als Daten mit Schutzschicht Methoden aussen herum
    • Klassen als solches erst später (quasi erst prototyp und dann klassen erklären)
  • Ganz anderer Ansatz: Erklären über Einheiten die sich über Nachrichten gegenseitig verständigen


  • Objekte vertieft: als Ansammlung von Daten mit Methoden dazu
    • Konstruktoren
    • um innendrinn auswechseln zu können
    • static
    • Static nicht static: Benefits of Local State
    • final
    • null, new
    • this
    • static / instanz -> Ebenen modell (?)

Übungsaufgaben