Objektorientierte Programmierung
objektbasierte Sprachen
Klasse
abstrakte Klasse
Klassifikation
Spezialisierung
Modularisierung
Subclassing
Überschreiben
Kapselung
1. Klassenkonzept
2. Prototypkonzept
Instanz
Instanziieren
Instanzvariable
Kapselung und Strukturierung von Klassen
Klasseninvarianten
Geheimnisprinzip
Information Hiding
Kapselung: Es ist der äußeren Klasse nicht erlaubt auf alle Methoden der inneren Klassen zu zu greifen
Schnittstellenbildung
Strukturieren von Klassen
Elementtyp
Objektzustand
Objeke: objects, Objekt
Klassentyp
Behälter, container
Innere Klassen
Statische Innere Klassen
Nicht statische innere Klassen
Werte: values
lokale Variable, objektlokale Variable
Basisdatentypen: byte, short, int, long, float, double, char, boolean
Identität
Eigenschaft
Verhalten
aktueller Zustand
Komponente
Nachrichten
Methoden, Klassenmethoden
main-Methode
Konstruktoren
Default-Konstruktor
Konstruktoraufruf
Methodenaufruf
Attribut
Prozedur
Konstante
Variablen
Typkonstruktur
formale Parameter
implizieter Parameter
1. Methodendeklaration
2. Konstruktorendeklaration
Objektreferenz
Zeiger
Array-Element
this
this-Object
self-Object
Schlüsselwort: static
Schlüsselwort: private
Vererbung
Spezialisierung
Klonen
Subtyping
Subtyp
Anweisungsblock
Zuweisung
Ausdruck
Ausdruck.Methodenname (AktuelleParameterliste)
Typkonvertierung (cast)
Auswertung von Ausdrücken
bedingte Anweisung
Schleifenanweisung
for-each
break-Anweisung
return-Anweisung
normale und abrupte Terminierung von Ausdrücken
try-Anweisung
Ausnahmesituation
throw-Anweisung
Ausnahmebehandlung + Nachrichtenversand
new
Überladen von Methodennamen und Konstruktoren
Initilasieren und Überladen
Intialisierung von Variablen und Attributne
Initialisierungsblöcke
statische Initialisierungsblöcke
nicht statische Initialsierungsblöcke
statisches Binden
dynamisches Binden
Bytecode
virtuelle Maschine
Übersetzungseinheiten
package Paketname;
Strukturierung von Programmen: Pakete
Pakete
Liste von import-Anweisungen
Liste von Typdeklarationen
Objekterzeugung
Attributzugriff
Klassenmethoden, beginnt mit Schlüsselwort static
Klassenattribute, beginnt mit Schlüsselwort static
statische Fabrikmethoden, static factory methods
Utility Class
String: valueOf
Subklassen-Instanzen
Rekursive Klassendeklaration
rekursiv
Doppelt verkettete List
public class Test {
public static void main (String [] args) {
//Anweisungsblock;
}
}
System.out.println (Ausdruck);
System.out.print (Ausdruck);
String s = "Hallo Welt";
int i;
System.out.println (i + " Mal " + s);
i.toString();
try
try-Block
catch (Ausnahme-Typ Bezeichner) catch-Block1
...
catch (Ausnahme-Typ Bezeichner) catch-Blockn
finally finally-Block
ArrayIndexOutOfBoundsException e
NumberFormatException e
ArithmeticExcpetion e
NullPointerException e
class Computer {
String name;
int MHz;
Computer (String name; int MHz) {
this.name = name;
this.MHz = MHz;
}
}
Modifikatorenliste class Klassenname {
Liste von Attribut-, Konstruktor- und Methodendeklarationen
}
Modifikatorenliste Ergebnistyp Methodenname (Parameterliste) throws-Deklarationen
Modifikatorenliste Klassenname (Parameterliste) throws-Deklaration
class LinListNode {
String val;
LinListNode next;
LinListNode prev;
LinListNode (... Konstruktor)
}
class LinList {
LinListNode head;
}
public static final double PI = ...
public static double sin(double a)
public static double pow(double a)
static String valueOf (long l)
static String valueOf (double d)
static String valueOf (String s)