Whouzuo: OOP Neuling - Werte speichern - übergeben - auslesen

Beitrag lesen

Hallo zusammen,

habe vor kurzen angefangen mich mit OOP zu beschäftigen. Ich habe jetzt ein kleines Problem. Und zwar habe ich einen Wert in einer Methode (ein String in dem ein Pfad zu einem Bild steht). Ich möchte diesen jetzt auslesen und in der setIcon Funktion einfügen.
Also so sieht es in etwa aus:

String vorname, nachname, wohnort, Fotopfad;

public void abcd (String Name, String Nachname, String Wohnort, String Passfoto)
Name = vorname;
Nachname = nachname;
Wohnort = wohnort;
Passfoto = Fotopfad;

....

  
Das Wichtigste hat dedlfix ja schon gesagt. ABER: da du OOP Neuling bist, solltest du das von ihm vorgeschlagene Design-Pattern (er nennt es hier Software Pattern) erstmal ignorieren, das würde dich ziemlich sicher momentan überfordern.  
  
Deshalb hier erstmal etwas "bodenständigere" Tipps. Du übergibst in deiner Methode den Namen, Nachnamen, Wohnort und das Passfoto (oder besser gesagt dessen Pfad) jeweils einzeln. Wenn du nach OOP programmierst, dann ist das sehr schlechter Stil, was du hier tust. Du solltest ab jetzt versuchen immer in Objekten zu denken. Und das bedeutet: wenn du erkennst, dass Variablen irgendwie eine Beziehung zueinander haben, dann gehören sie mir sehr hoher Wahrscheinlichkeit in ein Objekt, d.h. du musst dann dafür eine eigene Klasse erstellen.  
In diesem Beispiel erkenne ich sofort ohne nachzudenken: du willst mit Name, Nachname usw. eine \_Person\_ beschreiben. Und eine Person ist ganz eindeutig ein Objekt.  
Was du also tun solltest ist, eine Klasse für Personen-Objekte zu erstellen:  
  
~~~java
  
public class Person {  
  private String vorname;  
  private String nachname;  
  private String wohnort;  
  //usw.  
  
public Person(String vorname, String nachname, String wohnort) {  
  this.vorname = vorname;  
  this.nachname = nachname;  
  this.wohnort = wohnort;  
  //Jetzt kann man überall in der Klasse mittels this.variablenName auf die jeweilige Variable zugreifen  
}  
  
public String getFullName() {  
  return this.vorname + this.nachname;  
}  

Das solltest du dir angewöhnen, denn nur so kannst du die Vorteile von OOP nutzen, nämlich: später Veränderungen sehr leicht einfügen, hohe Wartbarkeit, gut zu testen, Fehler leicht findbar, wiederverwendbar in anderen späteren Programmen.