Skip to content
xenforo

Felder & Methodenaufruf

Content

Ich brauch mal Hilfe.
Ich hab ziemlich lange am Thema Felder gehangen
und noch ist mir [U]eines[/U] nicht ganz klar

Wie führe ich so eine Methode mit Feld aus?

Ich hab z.B für die Aufgabe 4 der KE 3, zum probieren die Methode static gesetzt, und dann so die Methode aufgerufen und ausprobiert:

public static void main (String \[\] args){\
		int \[\] array = new int\[\] {5,10,15,20};\
		 \
		berechneDurchschnitt(array);

Bildschirmausgabe korrekt: 12.5
Zuvor habe ich natürlich die Anweisung return(durchschnitt); , gegen einen einfaches System.out.println(durchschnitt); getauscht.

Nun meine Frage:
Wie mach ich dass, wenn die Methode nicht static ist mit dem Aufruf der Methode mit Feld als Parameter ???????

Comments

Um eine nicht statische Methode auszuführen musst du dir ein Objekt erzeugen. Eine Exemplarmethode statt einer Klassenmethode. Das Feld kannst du ganz normal als Parameter rein reichen.

public class MyClass {
public static void main(String[] args) {
int [] array = new int[] {5,10,15,20};

new MyClass().berechneDurchschnitt(array);
}

public void berechneDurchschnitt(int\[\] newValue) {\
    ...\
}\

}

Danke Kamuffel, die Frage hatte sich inzwischen erledigt.
Der Groschen mit dem Aufruf an Klassen vs. Objekten ist zwischenzeitlich gefallen. :)
LG
Sascha

@Kamuffel
Einen Nachfrage hätte ich trotzdem noch. Das das ganze auch ohne Konstruktor funktioniert, liegt doch daran, dass jede erzeugte Klasse auch wenn wir keinen Konstruktor implementieren über einen Standardkonstruktor verfügt, oder?

Ja. Jede nicht abstrakte Klasse hat einen default Constructor.

okay, danke. irgendwo hatte ich das gelesen, war mir aber nicht mehr sicher. ;)
lg
sascha