Suche best. Foren-Beitrag...

muemmel_0811

Bekanntes Mitglied
... und finde ihn einfach nicht mehr :oops:
Es ging um Konstruktoren und Getter/Setter und wann man eher das eine und wann eher das andere verwendet. Ich hab unzählige Threads mittlerweile durch, aber diesen einen, in dem sich eine absolut geniale Zusammenfassung befindet, find ich leider nicht mehr ;( (Konstruktor und Getter/Setter sind auch blöde Suchbegriffe) - es war eine klasse und verständliche Zusammenfassung von einem User in dem Thread.
Hoffe, jemand weiß, welchen Thread ich meine und hat zufällig den Link.

Danke und Grüße,
muemmel_0811
 

muemmel_0811

Bekanntes Mitglied
In den FAQs hab ich leider auch nix gefunden. Ich weiß nur, dass ich vor 3, 4 oder 5 Wochen irgendwo einen Thread (wahrscheinlich im Anfänger-Forum, aber auch das ist nicht sicher) gelesen hab, der dann auf den Thread, den ich suche, verlinkt hat.

Der Beitrag ging um das Für und Wider von Konstruktoren und Getter/Setter, bzw. was man wann wohl eher in welchem Fall einsetzt. Und, ich glaub, einer der Foren-Gurus hier ist es gewesen, hat da mal irgendwo diese gute Zusammenfassung niedergeschrieben.
 

muemmel_0811

Bekanntes Mitglied
nee, leider auch nicht. Ich werd wohl nicht drum rum kommen, wirklich jeden einzelnen Thread zu lesen und auf entsprechende Links zu klicken :autsch:
Aber dennoch schon mal vielen lieben Dank für Deine Hilfe!
 

Antoras

Top Contributor
Willst du was Konkretes zu Konstrukturen / Gettern / Settern wissen? Weil dann könnte man probieren es nochmal zu erklären. Wenn du nicht genau weißt wonach du suchst kann so eine Suche sehr mühselig werden.
 
M

maki

Gast
Finde auch du könntest deine Fragen hier stellen.. so schwierig ist das alles nicht.

Konstruktoren sollten ein gültiges Objekt erstellen, Ausnahmen sind JavaBeans, diese müssen einen Standardkonstruktor, Setter und Getter haben.
Falls man DI verwendet (Spring, Guice, etc.) hat man die Wahl zwischen Gettern/Settern und Konstruktoren die Werte setzen, da ist der Unterschied nicht mehr so groß, man spart sich einiges an "boilerplate" Code (Getter/Setter) wenn man es über den Konstruktor macht, und die Nutzer der Klasse wissen gleich, welche Parameter nicht optional sind.
 

muemmel_0811

Bekanntes Mitglied
Finde auch du könntest deine Fragen hier stellen.. so schwierig ist das alles nicht.
Na ja, ich will doch nur die immer wieder gleiche Frage vermeiden, vor allem deshalb, weil ich die Antwort doch hier in dem Forum schon gelesen habe :oops:
Aber eigentlich wollte ich nur noch mal lesen, wann es sinnvoller ist Getter und Setter zu verwenden und wann man Konstruktoren nutzt?

Bitte jetzt nicht schreiben, dass es Situationen gibt, in denen Getter und Setter zu spät kommen, weil das Objekt nach
Java:
Regentropfen blub = new Regentropfen();
bereits eine Größe haben sollte und nicht erst die Größe mit einem Setter zugewiesen wird. Den Teil hab ich schon verstanden. Was ich suche war mehr eine Art Kochrezept, wann man besser Konstruktoren verwendet und wann sich Getter/Setter eignen.
Mir ist auch klar, dass es hier kaum ein Richtig und Falsch gibt, aber es gibt eben diese Erfahrungswerte, die die Gurus hier schon haben und davon wollte ich profitieren.
 

Antoras

Top Contributor
Ich bin zwar kein Guru, probiere es aber trotzdem mal:

Versuche Setter immer zu vermeiden. Nutze statt dessen komplett gekapselte (unveränderliche) Objekte. Ein Grund ist die Nebenläufigkeit (die dir momentan wahrscheinlich noch komplett egal ist), ein Anderer die Lesbarkeit/Nachvollziehbarkeit des Codes. Wenn ein Objekt an einer Stelle erzeugt wird, ist das viel verständlicher als die Konstruktion über einen größeren Zeitraum zu vollstrecken. Ein Beispiel:
Java:
new Objekt(param1, pram2, param3);
// vs.
Objekt o = new Objekt();
// irgendwelche Berechnungen für param1
Objekt param1 = ...
o.set(param1);
// noch mehr Berechnungen
Objekt param2 = ...
o.set(param2);
// und noch mehr
Objekt param3 = ...
o.set(param3);
Im ersten Fall ist klar erkenntlich, mit was für Daten ein Objekt gefüllt wird. Schlimm wird es im zweiten Fall wenn z.B. eine Exception auftritt. Das Objekt gibt es schon - es ist aber noch unvollständig. Bei falschem Exception-Handling wird schnell mit diesen Objekt weitergearbeitet.

Noch deutlicher wird es hier:
Java:
Objekt machWas(Objekt o) {
  Objekt x = ...
  o.set(x);
  return o;
}
Wenn hier mehrere Threads aktiv sind fliegt dir das ganze System auseinander. Und selbst wenn es keine Threads gibt ist es verdammt schwer dem Ablauf des Codes zu folgen. Wenn du keine Setter erstellst, kann so etwas gar nicht erst auftreten. Lieber mit einer copy-Methode ein neues Objekt erzeugen und damit weiterarbeiten.

Nachrichten zwischen den Objekten tauscht du am besten über Observer/Listener aus (dafür kannst du dir mal MVC angucken - das ist ein Anwendungsfall bei dem man sehr gut damit arbeiten kann). Das sorgt auch dafür, dass du gleich mit Schnittstellen anstatt mit konkreten Implementierungen arbeitest (womit wir wieder bei Kapselung und Dependency Injection wären).

Wenn veränderliche Objekte benötigt werden, dann Setter nur nutzen wenn es nicht möglich ist diese Informationen schon bei der Konstruktion des Objekts anzugeben und ein Observer-/Listener-Konzept zu aufwendig wäre (was aber nur bei sehr kleinen Programmen der Fall ist).

Ich behaupte jetzt einfach mal, dass eine vernünftige Applikation es nicht nötig hat Setter zu benutzen. Funktional Programmiersprachen arbeiten sehr gut ohne diese und wenn man sich in einer imperativen Programmiersprache daran hält, kann man nicht viel falsch machen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M suche umfassendes Tutorial von Scenebuilder Bücher, Tutorials und Links 1
Dessischment Suche ein JOGL Buch Bücher, Tutorials und Links 9
OnDemand Suche Buch für Clean Code Bücher, Tutorials und Links 11
D Suche Bücher für allgemeine Softwareentwicklung Bücher, Tutorials und Links 15
K Suche Beispiele Rekursion und dynamische Programmierung Bücher, Tutorials und Links 1
T Suche: Einführung in Apache Solr Bücher, Tutorials und Links 3
P Suche Buch / Lernmaterial für Fortgeschrittene Bücher, Tutorials und Links 10
A Suche LaTeX Tutorials, PDFs oder anderen Lehrstoff Bücher, Tutorials und Links 4
W Suche Java einsteiger Buch und habe eine Frage zu einer Mathe Software. Bücher, Tutorials und Links 8
M Suche Tutorials für Client/Server und anderes Netzwerkbezogenes Bücher, Tutorials und Links 2
M Suche Tutorial für Sound erstellung in JAVA Bücher, Tutorials und Links 3
D Suche HSQLDB Tutorial/Lektüre Bücher, Tutorials und Links 7
V Suche gute Bücher über Informatik insbesondere Java Bücher, Tutorials und Links 1
X Suche Aufgaben-Buch, Tutorials und ähnliches Bücher, Tutorials und Links 2
S Suche Java Herausforderungen Bücher, Tutorials und Links 5
F Suche gutes Buch oder Tut zu Java Spieleprogrammierung Bücher, Tutorials und Links 3
L Suche Bücher auf Bachelor-Niveau für: ... Bücher, Tutorials und Links 6
F Suche Buch zur Awt und Swing Programmierung für fortgeschrittene :) Bücher, Tutorials und Links 7
tuttle64 Suche Buchempfehlungen zu Java Sicherheit Bücher, Tutorials und Links 2
P Suche Java Übungsaufgaben zu Datenstrukturen wie Listen etc Bücher, Tutorials und Links 5
T Suche Video Tuts zu Ubuntu!! Bücher, Tutorials und Links 3
S Suche gutes Java-Buch für fortgeschrittenere Themen Bücher, Tutorials und Links 4
P Suche Einstieg in Jbuilder 2008 R2 Bücher, Tutorials und Links 13
N [Suche] Buch Empfehlung für JUnit Bücher, Tutorials und Links 4
W Suche Buchempfehlung für SWING/AWT Bücher, Tutorials und Links 7
S [Suche]LWJGL OpenCL Tutorial Bücher, Tutorials und Links 4
M Suche J2EE Buch Bücher, Tutorials und Links 4
B [SUCHE] Buch oder Tutorial für "Herangehensweisen" Bücher, Tutorials und Links 3
B [Suche] Review Tools Bücher, Tutorials und Links 4
B [SUCHE] Gutes Buch für nächsten Level Bücher, Tutorials und Links 3
J Suche gutes junit Buch Bücher, Tutorials und Links 5
M Suche Buchergänzung zu "Servlets & JSP von Kopf bis Fuß" Bücher, Tutorials und Links 16
Y Suche ein MVC Tuturial Bücher, Tutorials und Links 2
G Suche Buchempfehlungen Bücher, Tutorials und Links 4
S Suche Java-Applet Buch Bücher, Tutorials und Links 2
F Suche spezielles Buch Bücher, Tutorials und Links 10
N [Suche] Anleitung zur Erstellung einer Webanwendung Bücher, Tutorials und Links 3
T Suche Buch: detaillierte Java-Zusammenfassung ohne viel Praxis oder Erklärungen Bücher, Tutorials und Links 3
R Suche 2d Bilder Bücher, Tutorials und Links 4
Wepster Suche weiterführende Bücher Bücher, Tutorials und Links 4
V Suche Java (6) Buch Bücher, Tutorials und Links 7
GambaJo Suche gebraucht: NetBeans Platform 6 RCP (von Heiko Böck) Bücher, Tutorials und Links 3
G Suche Buch zur rcp Entwicklung Bücher, Tutorials und Links 3
L Suche Java-Buch für "Anfänger" Bücher, Tutorials und Links 4
T Suche Buch zur Java Persistence API unter Java SE Bücher, Tutorials und Links 2
M Suche gutes Eclipse Plug-In Buch Bücher, Tutorials und Links 2
M Suche ein besonderes Tut Bücher, Tutorials und Links 2
G Suche Buch zu Design Patterns vornehmlich "visitor patt Bücher, Tutorials und Links 16
T [Suche] Tutorial zu Time Scheduler in Websphere Bücher, Tutorials und Links 5
S [Suche] Java Buch über OOP und Netzwerk bzw. Datenbank Bücher, Tutorials und Links 4
E Suche Tutorial/Buch über guten Stil bei GUI-Programmierung Bücher, Tutorials und Links 7
A Suche Literatur für professionelle Internationalisierung. Bücher, Tutorials und Links 2
W Source-Code-Suche Bücher, Tutorials und Links 4
F Suche buch für eine größere Anwendung Bücher, Tutorials und Links 7
N Suche: FTP Tutorial Bücher, Tutorials und Links 19
K (suche) hilfeprogramm für eclipse Bücher, Tutorials und Links 3
A API/Doc Suche leicht gemacht Bücher, Tutorials und Links 5
K Suche gutes Java-Magazin Bücher, Tutorials und Links 5
D Suche Buch über Schichtentrennung (daobase und co) Bücher, Tutorials und Links 9
J Suche Rekursions Ubuengen/Aufgaben Bücher, Tutorials und Links 3
P [SUCHE] Buch zu Planung und Konzeption Bücher, Tutorials und Links 3
rambozola suche link zu gegenüberstellung der strukturierung von daten Bücher, Tutorials und Links 2
T Suche Abschlussprojekt für Anfängerkurs Bücher, Tutorials und Links 12
D Suche Buch Java und Pc Peripherie Bücher, Tutorials und Links 4
K Suche Bücher: Hibernate, JSF, Tiles, Struts Bücher, Tutorials und Links 4
8 Suche Bücher zu SWT Bücher, Tutorials und Links 3
V Suche Java Buch das an Anfängerbücher anschließt Bücher, Tutorials und Links 5
J suche bestes Java-Buch für Neulinge mit Übungen-Lösunge Bücher, Tutorials und Links 9
T Suche Bücher zu STRUTS und J2EE Bücher, Tutorials und Links 2
P Suche Buch zum Thema JavaBeans Bücher, Tutorials und Links 17
B [Suche] Tutorial zu HttpUnit Bücher, Tutorials und Links 5
P Suche Übungsaufgaben. Bücher, Tutorials und Links 2
V Suche Java Buch zum Schritt für Schritt lernen Bücher, Tutorials und Links 13
G Suche Buch zu JBoss Bücher, Tutorials und Links 5
B Suche gutes XMLBuch Bücher, Tutorials und Links 2
K Suche Java-Bücher für Fortgeschrittene Bücher, Tutorials und Links 5
E Suche Bücher über Java Klassen Bücher, Tutorials und Links 4
B [Suche] Alles über Java Web Start Bücher, Tutorials und Links 1
B [SUCHE] Buch über Design Patterns Bücher, Tutorials und Links 5
H Suche Tutorials,Links oder Buchtipps zu Struts & JSP Bücher, Tutorials und Links 3

Ähnliche Java Themen


Oben