Java Methoden

HerrDrachen

Lieutenant
Registriert
Feb. 2016
Beiträge
584
Code:
package paket1;



	
public class Hallo1 {

	public static void main(String[] args) {
			
	int dasAlter = 35;
	String derName = "Franz";
	identification(dasAlter, derName, "Müller", "blonde");
	
	
		
	}
		
	static void identification(int alter, String name, String nachName, String haarFarbe){
		System.out.println("Sein Name ist: "+ name + nachName);
		System.out.println("Er ist "+ alter + " Jahre alt und hat " + haarFarbe + " Haare");
	}
		
		
		
		
	}


Kann mir jemand diesen Code erklären?
Was genau wurde gemacht? Schritt für Schritt?

Warum wird "Sein Name ist: FranzMüller
Er ist 35 Jahre alt und hat blonde Haare"

ausgegeben?

Ich verstehe echt 0 und hoffe auf Hilfe!
 
Zuletzt bearbeitet:
in Zeile 10 und 11 wird Inhalt an Schlagworte gebunden. In Zeile 19 und 20 werden Saetze ausgebenen die diese Schlagworte / Variablen enthalten. Durch die Zuweisung in Zeile 11 und 12 ergibt dies nun einen vollstaendigen Satz.
 
Zeile 12 ist der Methodenaufruf "identification" dieser Methode werden die in der Klammer stehenden Variablen übergeben.
In der Zeile 18 steht die Methode quasi genauer beschrieben. Die macht am Ende nicht anderes als die übergebenen Variablen dasAlter, derName, "Müller", "blonde" auszugeben. Die hießen jetzt nur nicht mehr so sondern eben int alter, String name, String nachName, String haarFarbe.
 
Zuletzt bearbeitet:
Ich weise mal auf folgende Ankündigung hin.
https://www.computerbase.de/forum/threads/fragen-hausaufgaben-co.1767679/

Ansonsten ist der Code doch recht simpel.
Zunächst werden zwei Variablen angelegt für Alter und Vorname.
Dann wird die Methode "identification" aufgerufen die weiter unten deklariert ist.
Diese erwartet 4 Werte als Eingabe. Zwei davon bekommt sie in Form der Variablen und die anderen beiden werden direkt im Aufruf eingegeben.
Die Methode schreibt dann den Text mit den Werten die sie bekommen hat.
Dann ist die Main-Methode zu Ende und das Programm ist fertig.
 
Dann sag doch bitte ganz genau welche Zeile(n) du nicht verstehst.
 
Deine Main Methode ist der Einstiegspunkt für die Anwendung.
Darin definierst du Alter und Name und rufst danach die Methode "identification" auf. Das funktioniert in deinem Beispiel, weil die Methode "static" ist und somit auch ohne eine Instanz der Klasse Hallo1 verwendet werden kann
 
Zeile Nr. 19 verstehe ich z.B. gar nicht, warum wird Franz Müller ausgegeben?
0 Ahnung
 
HerrDrachen schrieb:
Zeile Nr. 19 verstehe ich z.B. gar nicht, warum wird Franz Müller ausgegeben?
0 Ahnung

Code:
	String derName = "Franz";
	identification(dasAlter, derName, "Müller", "blonde");

Darum
 
Woher hast Du denn das Codeschnipsel, aus einem Buch? Ist da keine line by line Erklärung dabei? Seltsam...
 
Zeile 19:
System.out.println("Sein Name ist: "+ name + nachName);

Warum wird für name, Franz ausgeben und für
nachName, Müller?
 
Weil die Variablen name und nachName zum Zeitpunkt des Methodenaufrufs die Werte Franz und Müller haben.
 
Such Dir lieber ein ordentliches Buch (online/offline, egal), das bei den Grundlagen anfängt und schrittweise aufbaut.
Sich anhand irgendwelcher Code-Schnipsel durchzubeißen, ohne diese -sorry- banalen Dinge* schon zu verstehen, halte ich für kontraproduktiv und demotivierend.

Möglicherweise findest Du „Java ist auch eine Insel” gut.


* Stichworte für Deine Frage hier, zum Selberlesen, wären:
  • Deklaration
  • Zuweisung
  • Call by Reference
 
Weil die Variablen name und nachName zum Zeitpunkt des Methodenaufrufs die Werte Franz und Müller haben

Ja, warum das? Das ist genau das Problem!

Ich habe den Code von einem Onlinevideo, wo dieser Code nicht gut genug erklärt wird.
In den Büchern die ich habe, wird das auch nicht erklärt, der Code besteht nur aus paar Zeilen, die ich schon unglaublich schwierig finde.
 
Wegen
identification(dasAlter, derName, "Müller", "blonde");
und static void identification(int alter, String name, String nachName, String haarFarbe)
ergibt sich folgendes:
alter=dasAlter (=35)
name=derName (="Franz")
nachName="Müller"
haarFarbe="blonde"

Beim Aufruf werden die Variablennamen ersetzt. Vielleicht ist es das was du nicht verstehst
 
Zuletzt bearbeitet:
dasAlter = 35
derName = Franz
identification (ab hier kommen Aufzählungen 1, 2, 3, 4, oder A, B, C, D..)
dasAlter wird ersetzt durch 35
derName wird ersetzt durch Franz
Müller und blonde sind in der Klammer vorgegeben

jetzt hast du im zweiten Teil den Aufruf, welcher nichts anderes macht, als die Werte aus "identification" in die einzelnen Strings zu übernehmen

int alter = dasAlter = 35
string name = derName = Franz
string nachnahme = Müller - wie oben angegeben in den Klammern von identification (Müller)
string haarfarbe = blonde - wie oben angegeben in den Klammern von identification (blonde)

so wie du es liest oben in "identification"
so liest er unten bei der Stringerstellung die Werte aus..

identification(1. - dasAlter, 2. - derName, 3. - "Müller", 4. - "blonde");
identification(1. - int alter, String 2. - name, String 3. - nachName, String 4. - haarFarbe)

Jetzt?
 
Zuletzt bearbeitet:
Also in Zeile 8 beginnt dein Programm Zeile für Zeile abzuarbeiten
In Zeile 10 und 11 erstellst du 2 Variablen in die du die Werte 35 und Franz abspeicherst.
Das erste ist ein Integer kurz int. da werden Zahlen gespeichert.
Das 2. ist ein String. Da werden Zeichenketten gespeichert.

In der 12. Zeile rufst du die Funktion identification auf, die du weiter unten beschreibst was sie macht.
Dieser Funktion gibst du 4 Werte mit. Die ersten 2 welche du als Variablen gespeichert hast und 2 weitere die du einfach so mitgibst.

Also jetzt wird wie gesagt die Funktion identification ausgeführt die du in Zeile 18-20 beschreibst. In Zeile 18 steht quasi das ist eine Funktion, die identification heißt und eine Zahl (int) und 3 Strings braucht.

In Zeile 19 und 20 Wird 2 mal eine vordefinierte Funktion namens println aufgerufen. Sie benötigt einen oder mehrere Strings getrennt durch das Zeichen +. und was sie macht ist einfach alles was drinne steht in der Konsole ausgeben.
 
Falls das aus einem Onlinevideo kommt und nicht "genug erklärt" wird dann ist entweder:
a) das Video schlecht
b) das Video zu fortgeschritten für deinen Wissenstand
 
Zurück
Oben