Warum funktioniert diese einfache Methode nicht?

3 Antworten

Von Experte Dultus bestätigt

Weil du sie innerhalb der main-Methode erstellt hast.

Du kannst nicht eine Methode in einer anderen erstellen. Die müssen nacheinander.

public class Methoden {

  public static void main() {
    …
  }

  public static int add(int z, int q) {
    …
  }

}
Woher ich das weiß:Hobby – Programmieren ist mein Hobby & Beruf

Dultus  13.06.2022, 13:11
public static int add(int z, int q) {

Heretic! Die Klammer in der selben Zeile, verbrennt den Hexer!

MrAmazing2  13.06.2022, 15:19
@Dultus

Bei Java schreibt man die Klammern üblicherweise in die selbe Zeile.

Nehme mal an du bist C# Programmierer, da schreibt man sie in die nächste.

MrAmazing2  13.06.2022, 15:22
@Dultus

Also bei C++ schreibt man die Klammer doch auch in die selben Zeile or not? xD

Dultus  13.06.2022, 15:23
@MrAmazing2

Nope. :D

Naja, im Grunde ist es irrelevant, weil die IDE am Schluss ja darüber entscheidet.

Bei unserem Code haben wir das zumindest nicht ein mal getan.

orochi02  13.06.2022, 23:50
@Dultus

egal welche programmiersprache, nur weil das eine üblicher ist heißt das nicht, dass die andere form nicht benutzt wird

in c++ ist das sehr abhängig von der präferenz und in c#/java wird das gegenteilige verwendet

aber auch java benutzt klammern in der nächsten zeile bei programmen wie bluej

Weil die Methode innerhalb der main-Methode ist.

Du musst sie außerhalb direkt in der Klasse, nach der main-Methode erstellen.

LG

ich weiß ist nurn simples beispiel yada yada

aber wenn du funktionen innerhalb von funktionen definieren willst, kannst du lambdas benutzen

//psvm string args {
  Function<Integer> add = (z, q) -> z + q;
  add.apply(x, y);
}