Kapselung Setter Frage

JavaTalksToMe

Mitglied
Hallo,
Um in meiner Main Methode ein neues Objekt anzulegen, kann man auf mehrere Arten vorgehen.
Eine wäre diese hier:
Obst Apfel = new Obst(„Apfel“)

Nun wollte ich aber durch den Setter ein "Obst" anlegen und zwar nicht wie bei dem oben genannten Code, sondern durch:

Obst.setErzeugnis("Kiwi");
Das Problem ist, diese komplette Zeile wird mir rot unterstrichen.


Mein Setter sieht so aus:

public void setErzeugnis(String neuesObst){
erzeugnis = neuesObst;

Meine Vermutung geht in Richtung des Konstruktors, der bei mir, aus Testzwecken, neben dem Erzeugnis auch 3 int Variablen beinhaltet.

Allerdings habe ich dem ersten Code oben, 3 int werte hinzugefügt. Er streicht mir zwar dann nicht mehr die komplette Zeile rot an, dafür aber das „setErzeugnis“.

Kann mir wer helfen? :)


Gruß
 

JavaTalksToMe

Mitglied
Eclipse hat mir das mit den int werten mitgeteilt. Was aber nichts gebracht hat. Darüber was mir Eclipse sagt, habe ich bereits nachgedacht.

Sonst würde ich hier nicht schreiben. Darüber solltest du mal nachdenken ;)

Und zu deiner Frage: Ja, das ist alles. Gemäß javakurs.de. Ich wüßte jetzt zumindest nicht, was dort noch stehen sollte bei einem Setter.
Aber ich programmiere auch erst seit ein paar Wochen.


Ich bearbeite gerade Übungsaufgaben:
Die Aufgabe war, ein Obst anzulegen nur mit dieser Methode.

Vom Sinn her habe ich eigentglich alles verstanden was in dem Video gesagt wurde. In dem Video klappt es auch. Aber seltsamerweise bei mir nicht. Irgendwo ist der Wurm drinnen.




Gruß
 
Zuletzt bearbeitet:

JavaTalksToMe

Mitglied
"The method setErzeugnis(String) in the type Obst is not applicable for the arguments(string, int, int, int)."
Das steht jetzt auch aktuell so drinnen:
Obst.setErzeugnis("Kiwi", 2, 3, 50);

Das verwirrende ist, wenn ich die Zahlen wieder wegmache, schlägt er mir es wieder vor, die 3 int werte reinzuschreiben. Ich nehme mal an das ist wegen dem Konstruktor. Der beinhaltet String, int, int, int. Aber ich habe es ja getestet. Wenn die 3 int werte mit drinnen stehen, beschwert er sich wegen dem "setErzeugnis".

 

mrBrown

Super-Moderator
Mitarbeiter
Dann kannst du diese Methode nicht auf der Klasse Obst aufrufen, sondern nur auf einem vorher erzeugten Objekt, zb:

Java:
Obst apfel = new Obst("Apfel");
apfel.setErzeugnis("Kiwi");
 

JStein52

Top Contributor
Poste doch mal deinen ganzen Code. Irgendwas enthältst du uns hier vor und es ist aus den Fragmenten nicht ersichtlich was das mit 3 int's zu tun haben soll.
 

Java20134

Bekanntes Mitglied
Wenn du das ganze so erstellen willst, musst du entweder eine neue Klasse machen, die das ganze Obst verwaltet oder du erstellst dir eine Factory.
 

JavaTalksToMe

Mitglied
Was abercziemlich sinnlos ist würde ich mal sagen...
Ja. Deswegen ist es auch ei Lernvideo. Es zeigt Wege auf die man gehen sollte und welche die man nicht gehen sollte. Aber danke für deinen Beitrag.

Was soll das mit dem Konstruktor zu tun haben ? Da steht weit und breit kein new Obst(....)
Ok. Ich will es nur verstehen.
Das new Obst(), damit erstelle ich ja ein neues Objekt, bassierend auf dem Konstruktor.
Heißt das, wenn ich dann ein "Obst" generieren will, wie beispielsweise die "Kiwi", ist das kein "richtiges" Objekt? Sondern quasi nur die Beschreibung?

Gerne poste ich den Code. Aber ich sage im Vorfeld, das es nur ein TestCode zum rumprobieren. Also nicht wundern, wenn etwas vielleicht keinen Sinn ergibt. Es ging mir einfach nur darum den Sinn dahinter zu verstehen. Und sorry für das Erscheinungsbild. :)


Java:
public class Obst {


      ///Instanz Variablen
       private String erzeugnis;
      private int einkaufspreis;
      private int verkaufspreis;
      private int naehrwert;

 
////Instanz Methode
public void aufmotzen(int neuerWert){
      naehrwert = naehrwert + 50;
}
/*TODO////////////////////////
* Abfangmechanismus für negative Zahlen noch eifügen
*/
////Getter/////
      public String getErzeugnis(){
            return erzeugnis;
}
public int getEinkaufspreis(){
      return einkaufspreis;
}
public int getVerkaufspreis(){
      return verkaufspreis;
}
////Setter
public int getNaehrwert(){
      return naehrwert;
}
public void setErzeugnis(String neuesObst){
erzeugnis = neuesObst;
   
}
/////Konstruktor
public Obst (String dasErzeugnis, int derEinkaufspreis, int derVerkaufspreis, int derNaehrwert) {
erzeugnis = dasErzeugnis;
einkaufspreis = derEinkaufspreis;
verkaufspreis = derVerkaufspreis;
naehrwert = derNaehrwert;
}

}

--------------------------------------------------------------------------------------------
Java:
public class Verkaufsladen {
      public static void main(String[] args) {             
 
  Obst Apfel = new Obst("Apfel", 1, 2, 50);
Obst Birne = new Obst("Birne", 2, 3, 60);

Obst.setErzeugnis("Kiwi", 5, 5, 9);

      Apfel.aufmotzen(50);


      }  


}

 
Zuletzt bearbeitet von einem Moderator:

mrBrown

Super-Moderator
Mitarbeiter
Das new Obst(), damit erstelle ich ja ein neues Objekt, bassierend auf dem Konstruktor.
Heißt das, wenn ich dann ein "Obst" generieren will, wie beispielsweise die "Kiwi", ist das kein "richtiges" Objekt? Sondern quasi nur die Beschreibung?
Doch es ist dann ein neues Objekt. Und dieses Objekt hat eine Eigenschaft erzeugnis, die den Wert Kiwi hat.

Mit setErzeugnis kann man diesen Wert ändern - aber es wird kein neues Objekt erzeugt, sondern nur das schon existierende geändert.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Frage zu Setter u. Getter Java Basics - Anfänger-Themen 7
H Frage zu getter und setter Java Basics - Anfänger-Themen 5
I If / Else in Setter? Java Basics - Anfänger-Themen 8
T Getter/Setter - wie sieht ein Setter aus? Und wie nicht? Java Basics - Anfänger-Themen 34
M Methoden Zweidimensionaler Array mit Setter Methode ändern Java Basics - Anfänger-Themen 4
H Mit setter-Methode JLabel in einer andern Klasse ändern. Java Basics - Anfänger-Themen 40
W Getter/Setter Java Basics - Anfänger-Themen 4
C Setter-Methode mit final-Attribut Java Basics - Anfänger-Themen 9
KogoroMori21 Objektvariable anderer Klasse übernehmen, Getter/Setter Java Basics - Anfänger-Themen 11
T Verständnisfrage Objekt Getter Setter Java Basics - Anfänger-Themen 102
KogoroMori21 Getter und Setter Java Basics - Anfänger-Themen 5
S Klassen instanziieren und verwenden von Getter und Setter Java Basics - Anfänger-Themen 4
P Klasse hat keinen Zugriff auf getter/setter-Methoden eines Objektes Java Basics - Anfänger-Themen 9
M Gettter/Setter Methoden Klassenfelder kapselung und zugriff? Java Basics - Anfänger-Themen 1
V getter/setter Garage Java Basics - Anfänger-Themen 12
S getter, setter in abstrakter Klasse oder lieber Unterklassen Java Basics - Anfänger-Themen 4
topi Kapselung getter und setter Java Basics - Anfänger-Themen 5
D Setter/Getter für Instanzvariablen praktisch? Java Basics - Anfänger-Themen 19
S Getter/Setter - Variablenklasse ? Java Basics - Anfänger-Themen 5
S getter and setter Java Basics - Anfänger-Themen 12
L Getter und Setter Java Basics - Anfänger-Themen 2
M Generics getter und setter Methoden Java Basics - Anfänger-Themen 4
E Methoden Objekte in Methode aufrufen ohne getter und setter? Java Basics - Anfänger-Themen 1
kilopack15 Ist diese setter-Methode richtig? Java Basics - Anfänger-Themen 2
L Klassen - Getter & Setter Methoden Java Basics - Anfänger-Themen 2
D Erste Schritte Java - Setter und Getter Java Basics - Anfänger-Themen 1
T setter im Konstruktor einbauen? Java Basics - Anfänger-Themen 8
Z Getter/Setter NullPointer Exception Java Basics - Anfänger-Themen 6
K Klassen Setter/Getter Java Basics - Anfänger-Themen 3
F OOP Schleifen und Probleme mit Setter und Getter Java Basics - Anfänger-Themen 1
L Setter und Getter/Vererbung Java Basics - Anfänger-Themen 6
K Kapselung getter & setter Java Basics - Anfänger-Themen 11
F Setter Java Basics - Anfänger-Themen 4
gamebreiti Problem mit Setter in Superklasse Verkettung der Kostruktoren??? Java Basics - Anfänger-Themen 7
T Variablen Getter-Setter vs Public Variable? Java Basics - Anfänger-Themen 5
Y Konstruktor - Setter/Getter Java Basics - Anfänger-Themen 3
N Setter funktioniert nicht Java Basics - Anfänger-Themen 6
N Klassen fragen zur getter und setter methode Java Basics - Anfänger-Themen 11
D Ab wann getter und setter Java Basics - Anfänger-Themen 2
K getter & setter Java Basics - Anfänger-Themen 6
M Methoden Problem bei Setter. Java Basics - Anfänger-Themen 2
C getter/setter Problem anscheinend Java Basics - Anfänger-Themen 13
G Erste Schritte Getter und Setter Java Basics - Anfänger-Themen 12
S setter Java Basics - Anfänger-Themen 9
B Getter,Setter - Konstruktor überflüssig? Java Basics - Anfänger-Themen 26
N Sprite Methode (Getter, Setter, Konstruktor) Java Basics - Anfänger-Themen 9
S getter/setter aufrufen Java Basics - Anfänger-Themen 9
B Java getter/setter funktioniert nicht! Java Basics - Anfänger-Themen 7
X OOP Getter/Setter überschreiben den Wert ihrer Variablen nicht Java Basics - Anfänger-Themen 4
S Ein Attribut/Instanz eines bestehendes Objektes mit SETTER Methode ändern Java Basics - Anfänger-Themen 3
T Erste Schritte Verständnisfrage: Getter und Setter Methoden Java Basics - Anfänger-Themen 3
S Setter Methode von Boolean Java Basics - Anfänger-Themen 11
V public Variablen vs Getter + Setter Java Basics - Anfänger-Themen 4
F Getter und Setter Java Basics - Anfänger-Themen 4
lulas[]args getter/setter umstellung Java Basics - Anfänger-Themen 6
propra Gegenteil von Setter-Methoden Java Basics - Anfänger-Themen 30
T Setter Methode Wertebereich eingrenzen Java Basics - Anfänger-Themen 5
F Setter-Methode bei double-Array Java Basics - Anfänger-Themen 6
A Setter verschachteln? Java Basics - Anfänger-Themen 4
D Kapselung override Setter Java Basics - Anfänger-Themen 5
B Klassen Getter-Setter vor neuem Klassenaufruf - wie? Java Basics - Anfänger-Themen 20
T Variablen fast identische Setter Java Basics - Anfänger-Themen 14
H OOP Setter im Konstruktor um code nicht zu wiederholen? Java Basics - Anfänger-Themen 2
N OOP Getter, Setter und andere Probleme Java Basics - Anfänger-Themen 8
A OOP Getter und Setter Java Basics - Anfänger-Themen 18
L Unterschied Konstruktor / Getter Setter Java Basics - Anfänger-Themen 13
L Setter und Getter für Arrays? Java Basics - Anfänger-Themen 4
N boolean bei Setter und getter methoden Java Basics - Anfänger-Themen 21
N immer Setter-Methoden verwenden? Java Basics - Anfänger-Themen 54
J Getter und Setter auch intern benutzen - guter Stil? Java Basics - Anfänger-Themen 31
U Problem mit setter Java Basics - Anfänger-Themen 17
Houly Setter/Getter MEthoden testen Java Basics - Anfänger-Themen 4
P OOP Getter&Setter Methoden funktionieren nicht Java Basics - Anfänger-Themen 7
S Setter bei Variablen Java Basics - Anfänger-Themen 6
R Enum und dann setter Setzen? Java Basics - Anfänger-Themen 44
H Setter-und-Getter-Konvention Java Basics - Anfänger-Themen 8
V Reflection API - getter und setter Java Basics - Anfänger-Themen 7
-horn- EINE setter/getter klasse aus mehreren klassen befüllen Java Basics - Anfänger-Themen 13
C Getter/Setter Java Basics - Anfänger-Themen 61
G [Hibernate] Could not find a setter for property Java Basics - Anfänger-Themen 2
S Unbenutzte/überflüssige Getter/Setter herausfinden? Java Basics - Anfänger-Themen 2
M getter/setter bei JTextField ? Java Basics - Anfänger-Themen 21
G warum Setter/Getter Java Basics - Anfänger-Themen 25
S In einer Liste auf getter und setter zugreifen Java Basics - Anfänger-Themen 6
Zrebna Frage zu Test-Driven Development (TDD) Java Basics - Anfänger-Themen 3
I Frage Thymeleaf -> Fehler ignorieren und mit "" ersetzen? Java Basics - Anfänger-Themen 15
I Frage Thymeleaf -> Prefix / Suffix ändern? Java Basics - Anfänger-Themen 11
D Rekursions Probleme / frage Java Basics - Anfänger-Themen 4
T Frage zu Parse Java Basics - Anfänger-Themen 2
H Frage an die Profis Java Basics - Anfänger-Themen 4
J Eine konzeptionelle Frage zu OOP Java Basics - Anfänger-Themen 3
P Frage zu Rekursion und Backtracking Java Basics - Anfänger-Themen 2
H Frage zur Ausgabe Java Basics - Anfänger-Themen 4
H Frage zu arithmetischen Operationen Java Basics - Anfänger-Themen 20
F Kurze Frage zu replace() Java Basics - Anfänger-Themen 19
JavaSchmecktLecker Polymorphie Frage zur Methodenüberschreibung Java Basics - Anfänger-Themen 21
J Frage zu einem "Taschenrechner" code Java Basics - Anfänger-Themen 9
B Erste Schritte Frage zu Instanzierung und Referenzen Java Basics - Anfänger-Themen 8
DoubleM Runtime.getRuntime().exec Frage Java Basics - Anfänger-Themen 2
J Eine theoretische Frage zur Praxis - JPanel oder Canvas Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben