Vorlesung Informatik 1 - Teil A: Java Kurs

1.4 Methoden

Methoden sind die wichtigsten Bestandteile von Klassen. 

Wenn wir Methoden definieren, geben wir folgende Eigenschaften an:

  • den Namen:  frei wählbar (Ausnahme main), beginnt mit Kleinbuchstaben, keine Umlaute.
  • den return-Typ: soll die Methode einen Wert zurückliefern (z.B. eine mathematische Funktion?
    • wenn nein: return-Typ void
    • wenn ja: entsprechender Datentyp (z.B. int oder double falls eine Zahl berechnet wird)
  • die Sichtbarkeit: welche Klassen dürfen diese Methode anwenden
    • public: die Methode ist für alle Klassen sichtbar (häufigster Fall)
    • private: nur andere Methoden der eigenen Klasse dürfen die Methode rufen (für Hilfsmethoden innerhalb einer Klasse)
    • protected: Methoden der eigenen Klasse und von abgeleiteten Klassen ((Vererbung)  dürfen die Methode verwenden
  • die Parameter: eine durch Kommata getrennte Liste von Variablen in runden Klammern. Sie darf leer sein.
    Die Parameter gehören zu den lokale Variablen einer Methode. 

   Sichtbarkeit   return-            Name               Parameter-
          |                 Typ                  |                            Liste
      
          |                  |                      |                      ----^----
        public          int            berechneSumme(int x, int y) {
               int summe = x + y;
              return summe;
        }

  • Eine Methode, deren return-Typ nicht void ist, muss eine return-Anweisung enthalten. Nach  return muss ein Wert stehen, dessen Typ dem return-Typ entspricht.
  • Statische Methoden nennt man Klassenmethoden. Den Modifikator static verwenden wir ausschließlich bei der Methode main. Klassenmethoden arbeiten unabhängig von Objekten (das Betriebssystem muss nicht erst ein Objekt vom Typ HalloWelt erzeugen, um main zu rufen).

  • Nicht-statischen Methoden heißen Instanzmethoden.
    • Instanzmethoden arbeiten für ein einzelnes Objekt (eine Instanz), z.B. 
          Konto meinKontoo = new Konto();
          meinKonto.einzahlen(5000);

      Die Methode einzahlen wird für ein bestimmtes Objekt (hier meinKonto) gerufen, sie ändert das Saldo dieses Kontos.

Beispiele: 

      // Schreibe eine Zahl auf die Standardausgabe
      public void gibZahlAus(int zahl){
               System.out.println("Die Zahl ist "+zahl);
       }

      // Berechne die Summe von zwei Zahlen
     public int summe(int x, int y){
              int summe=x+y;       // lokale Variable
              return summe;
      }

           

Weiterführende Links

Kapitel in Java ist auch eine Insel

Lehrvideo  (YouTube)