Java-Objekt befüllen - Verstädnis

TChill

Mitglied
Servus Community bin grad dabei ein Kühlschrank zu befüllen und mir fällt das Verstädnis ein bisschen bei der Funktion, wäre sehr hilfreich wenn es mir vllt jemand näher erklären könnte.
So erstmal der Code hier.
Java:
	public static Fridge initFridge (String Modellbezeichnung, int Nutszinhalt,int Energieverbrauch,double Preis){
Fridge Kühlschrank = new Fridge ();
Kühlschrank.Modellbezeichnung = Modellbezeichnung;
Kühlschrank.Nutzinhalt = Nutszinhalt;    //--> siehe oben (Nutzsinhalt ist mit absicht so geschrieben damit es mir vllt klarer wird)
Kühlschrank.Energieverbrauch = Energieverbrauch;
Kühlschrank.Preis = Preis;
return Kühlschrank;

	}
So meine frage in dem ganzen hier ist wieso schreib ich public static Fridge und nicht void z.b.
Was mach ich in dem ganzen geh ich direkt in die Datenstruktur rein oder wie seh ich das ?
Wann muss ich das ganze verwenden? Immer wenn ich ein Objekt etwas zu weisen will ?
Theoretisch ist es ja egal was nach initFridge in der Klammer steht...
Ich hoffe ihr versteht auf was ich hinaus will mir fällt einfach dieser Moment wo es klick macht und was ich in der ganzen Funktion hier tue.
Vielen dank euch im vorraus !!!
 
Hi,
So meine frage in dem ganzen hier ist wieso schreib ich public static Fridge und nicht void z.b.
der Aufbau vom Methoden- Rumpf sieht so aus

Modifikator Rückgabedatentyp Methodenname ( Datentyp Argument1, … ) {..}
Modifikator: public static
- public: methode ist von anderen Klassen ansprechbar
- static: es handelt sich um eine Klassen- Methode
Rückgabedatentyp: Fridge
Wenn eine Methode ein Objekt zurückgeben muss, muss der Rückgabedatentyp festgelegt werden. Diese Methode hat dann ein return- statement (also ein Objekt vom Rückgabetyp)
Beim typ void wird nichts zurückgegeben. Also kein return statement am Ende der Methode.
Methodenname: initFridge

Was mach ich in dem ganzen geh ich direkt in die Datenstruktur rein oder wie seh ich das ?
Du erstellst eine Fridge- Instanz (Kühlschrank) und machst dann für diese Instanz (oder auch Objekt) Zuweisungen an die verschiedenen Variablen ( .Nutzinhalt; .Modellbezeichnung etc)
Du solltest hier jedoch die Variablen in der Klasse Fridge private setzten und dann für jede Variable getter und setter- Methoden erstellen:
Java:
public class Fridge{
   private int Nutzinhalt;
   // weitere Variablen
   
   // setter- Methode für Nutzinhalt
   public void setNutzinhalt(int inhalt) {
      Nutzinhalt = inhalt;
   }

   // getter- Methode für Nutzinhalt
   public int getNutzinhalt() {
      return Nutzinhalt;
   }
   // weitere getters und setters
...
}

in dem Beispiel von dir würde dass dan so aussehen:
Java:
    public static Fridge initFridge (String Modellbezeichnung, int Nutszinhalt, int Energieverbrauch,double Preis){
    Fridge Kühlschrank = new Fridge ();
    Kühlschrank.setModellbezeichnung(Modellbezeichnung);
    Kühlschrank.setNutzinhalt(Nutszinhalt);
    Kühlschrank.setEnergieverbrauch(Energieverbrauch);
    Kühlschrank.setPreis(Preis);
    return Kühlschrank;
     
        }


Wann muss ich das ganze verwenden? Immer wenn ich ein Objekt etwas zu weisen will ?

Was meinst du damit?

Theoretisch ist es ja egal was nach initFridge in der Klammer steht...
es kommt immer darauf an, was die Methode genau machen soll und welche Daten für die Operationen, die in der Methode ausgeführt werden sollen, bereitstehen sollen.

Ich hoffe ihr versteht auf was ich hinaus will mir fällt einfach dieser Moment wo es klick macht und was ich in der ganzen Funktion hier tue.
siehe oben
 
Zuletzt bearbeitet:

Zurück
Oben