| Java™ und Objektorientierung | |
| Java/OO |   Druckversion | 
 
Die Methodensyntax in Java lautet:
Ein Stern '*' sagt aus, dass ein Feld mehrmals angewendet werden darf. 
Eckige Klammern '[' und ']' bedeuten, dass das Feld optional ist.
Dabei haben die Felder folgende Bedeutungen:
| <modifier> | :== | Modifizierer: public, protected, private, static, strictfp, native, abstract, final, synchronized. | 
| <return-type> | :== | Rückgabewert: void | <Datentyp> | 
| <name> | :== | Identifier: Name der Methode | 
| <parameter> | :== | Übergabewerte: [final] <Datentyp> <Name> Mit Kommata (,) getrennt.  | 
| <exception> | :== | Exception Type: Name der Exceptionklasse (Siehe: Exceptions) | 
| <Block> | :== | Anweisungen (Siehe: Anweisungen) | 
public static void main (String [] args) { System.out.println("Hallo Welt."); }
private static ByteToCharConverter getBTCConverter(String encoding) throws UnsupportedEncodingException { ByteToCharConverter btc = null; if (btcConverter == null) btcConverter = new ThreadLocal(); SoftReference ref = (SoftReference)(btcConverter.get()); if (ref==null || (btc = (ByteToCharConverter)ref.get())==null || !encoding.equals(btc.getCharacterEncoding())) { btc = ByteToCharConverter.getConverter(encoding); btcConverter.set(new SoftReference(btc)); } else { btc.reset(); } return btc; }
Methoden werden immer innherhalb von Klassen deklariert und definiert. Beim Aufruf sind im Modellfall drei Objekte beteiligt.
    Deklaration / Definitionpublic class Modell {
  RetClass methode(ParamClass param) {
    RetClass result;
    // TODO result = ... , param , ...;
    return result;       
  }
}
   | 
  
    AufrufModell mod; // TODO mod = ... ParamClass par; // TODO par = ... RetClass res; res = mod.methode(par);  | 
 
Funktionen zeichnen sich dadurch aus, dass sie einen Rückgabewert aufweisen. Sie sollten keine Nebeneffekte erzeugen und so besitzen sie oft keinen this-Pointer. Sie werden also meist auf der Klasse (und nicht auf Objekten) aufgerufen.
    Deklaration / Definitionpublic class FModell {
  static RetClass methode(ParamClass param) {
    RetClass result;
    // TODO result = ... , param , ...;
    return result;       
  }
}
   | 
  
    AufrufParamClass par; // TODO par = ... RetClass res; res = FModell.methode(par);  | 
 
Allgemeine Prozeduren (manchmal auch Subroutinen genannt), haben keinen Return-Wert.
    Deklaration / Definitionpublic class PModell {
  void methode(ParamClass param) {
    // TODO: define statements 
  }
}
   | 
  
    AufrufPModell pMod; // TODO pMod = ... ParamClass par; // TODO par = ... pMod.methode(par);  |