Agenda

  • Wiederholung
  • Einführung Objektorientierung
  • Modifier
  • Zusammenfassung

Wiederholung

Datentypen

  • Wahrheitswerte (boolean)
  • Zeichen (char, String)
  • Ganzzahlen (byte, short, int, long)
  • Gleitkommazahlen (float, double)

Datenobjekte

  • Platzhalter, um Werte zwischenzuspeichern
  • Datentyp Bezeichner = Wert;
  • Standard für Ganzzahlen: int
  • Standard für Gleitkommazahlen: double

Methoden

  • Rückgabetyp (primitiv, komplex, void)
  • Bezeichner
  • Parameter
  • Methodenrumpf

Operatoren

  • Arithmetische Operatoren (+, -, *, /, %, ++, --)
  • Vergleichsoperatoren (==, !=, etc.)
  • Logische Operatoren (&&, ||, !)
  • Bitweise Operatoren (&, |, ^, ~)

Fallunterscheidung

  • if-else
  • switch

Schleifen

  • while-Schleife
  • do-while-Schleife
  • for-Schleife
  • for-each-Schleife

Arrays

  • Elemente eines Typs
  • Feste Länge
  • index beginnt bei 0

ArrayList

  • Elemente eines Typs
  • Dynamische Länge
  • index beginnt bei 0
  • Hilfsmethoden

Helper Klassen

  • Math
  • Random
  • Scanner

Einführung Objektorientierung

Objekte in unserer Umgebung

  • Handys
  • Menschen
  • Autos

Was für Eigenschaften hat ein spezifischer Mensch?

  • blaue Augen
  • blonde Haare
  • hat Brille

Was für Verhaltensweisen hat jeder Mensch?

  • essen
  • trinken
  • laufen
  • ganzen Namen sagen

Was für Eigenschaften hat ein spezifisches Auto?

  • schwarze Farbe
  • 177 PS
  • Elektromotor

Was für Funktionen hat jedes Auto?

  • bremsen
  • beschleunigen
  • Laufleistung anzeigen

Abstrahieren von spezifischen Menschen

  • Augenfarbe
  • Haarfarbe
  • hat Brille

Abstrahieren von spezifischen Autos

  • Autofarbe
  • Anzahl PS
  • Motorart

Demo Klasse

  • Mensch
  • Auto

Was sind Klassen?

Abstraktion von gleichartigen Objekten durch:

  • Attribute
  • Methoden

Beispiel Klasse Mensch

public class Human {
  public String firstName;
  public String lastName;
 
  public String getFullName() {
    return firstName + lastName;
  }
}

Demo Objekte

  • Steffen, Marianna, Mirco
  • Audi A3, Fiat 500, BMW 335i

Was ist ein Objekt?

  • Instanz/Ausprägung einer Klasse
//...
Human steffen = new Human();
steffen.firstName = "Steffen"
steffen.lastName = "Merk"
 
Human marianna = new Human();
marianna.firstName = "Marianna"
marianna.lastName = "Maglio"
//...

Demo Objekt

  • Lesen und Schreiben von Attributen
  • Unterschied Referenzvariable und Variable
  • Was ist null?

Modifier

Arten von Modifiern

  • Access Modifier heute relevant
  • Non-Access Modifier

Was machen Access Modifier?

Steuern den Zugriff auf:

  • Klassen
  • Attribute
  • Methoden
  • Konstruktoren (werden später behandelt)

Was für Access Modifier gibt es?

  • public
  • private
  • protected
  • default*

*NKR

Wann verwendet man public?

  • um Funktionalität zur Verfügung zu stellen

Wann verwendet man private?

  • um Modifikation von Attributen zu verhindern
  • um Implementierungsdetails zu verstecken
  • Organisation von Code

Demo Modifiers

  • public & private
  • Getter & Setter
  • Schlüsselwort this
  • Überladen von Methoden

Zusammenfassung

Klasse

  • Abstraktion von Objekten
  • definiert durch Methoden und Attribute

Objekt

  • Instanz einer Klasse
  • Verhalten abhängig von der Instanz
  • ist eine Referenzvariable
  • hat den default Wert null

Modifiers

  • public & private
  • Getter & Setter
  • this
  • Überladen von Methoden

Rest of the day

  • Aufgabe Objects 01