Sollte man Klassenvariablen als final deklarieren?

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Eine Frage zu Eclipse, oder eher zur Programmierkonvention:

Welchen Vorteil hat es, dass von Eclipse Übergabeparameter, die man über STRG + F1 Klassenvariablen zuweisen lässt, das Schlüsselwort final hinzugefügt wird?

Für mich scheint das in den meisten Fällen überflüssig.


Da mir das ganze etwas schwer zu beschreiben scheint, hier ein Screen:

 

Marco13

Top Contributor
Anonymous hat gesagt.:
Für mich scheint das in den meisten Fällen überflüssig.
Ist es auch :wink: Mit 'final' kann man (wenn man will) deutlich machen, dass ein Field (nach dem Setzen im Konstruktor) NIE mehr geändert werden darf. (Konsequent eingesetzt wird das im "Immutable-Pattern"). Es könnte theoretisch einen kleinen Geschwindigkeitsvorteil bringen, aber der ist vernachlässigbar. Also ... ein Field, das man nicht ändern will, 'final' zu machen, "kann nicht schaden" (aber eben auch nicht viel nutzen)
 
M

maki

Gast
Welchen Vorteil hat es, dass von Eclipse Übergabeparameter, die man über STRG + F1 Klassenvariablen zuweisen lässt, das Schlüsselwort final hinzugefügt wird?
Einerseits sagt es aus, dass dieser Parameter ein sog. "IN" ist, da er nicht mehr geändert werden kann.
Andereseits verhindert es effektiv Fehler, wie zB.
Code:
private final int px;
private final int py;

public Coords(final int px, final int py) {
    px = px;
    py = py;
}
Dadurch wird nicht nur eine Warnung der IDE/des Compilers erzeugt, sondern ein richtiger Fehler.

Ob man das so macht oder nicht, ist geschmackssache.
Ich mache es gerne so, zwar nicht immer, aber immer öfter ;)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
monsterherz Fehler Semikolon fehlt - ich weiss aber nicht wo da noch eines hin sollte... Java Basics - Anfänger-Themen 21
A Wie sollte ich es am besten an gehen - denkweise Java Basics - Anfänger-Themen 48
J Vektoren Add gibt nicht das aus was es sollte Java Basics - Anfänger-Themen 3
M Klassen Warum sollte man Abstraktion verwenden? Java Basics - Anfänger-Themen 4
W Dezimalzahl in Binär umwandeln - Was sollte ich an meinem Programm verbessern? Java Basics - Anfänger-Themen 5
C Polymorphie Was genau ist Polymorphie und wann genau sollte man es verwenden? Java Basics - Anfänger-Themen 9
J OOP Wie sollte ich das organisieren (Abstract? Interface?) Java Basics - Anfänger-Themen 33
S Erste Schritte Generische Klassen sind toll ....aber warum sollte ich das je benutzen? Java Basics - Anfänger-Themen 3
W Wie kann man diesen Code in einen Code umwandeln, der folgendes können sollte? Java Basics - Anfänger-Themen 1
S Welchen Bereich sollte ich favorisieren? Java Basics - Anfänger-Themen 3
K JAR Dateien einbinden - funkt nicht wie es sollte... Java Basics - Anfänger-Themen 22
S JUnit assertEquals funktioniert nichgt wie es sollte :( Java Basics - Anfänger-Themen 7
L Erste Schritte Sollte ich hier lieber Cases verwenden oder wäre eine If-Bedingung besser? Java Basics - Anfänger-Themen 6
P Ergebnis sollte double sein ... Java Basics - Anfänger-Themen 5
S Wie sollte man Package bezeichnen Java Basics - Anfänger-Themen 2
B Frage zu Programmierstil: sollte Hauptklasse nur main enthalten? Java Basics - Anfänger-Themen 6
D Warum sollte ich bestehende Funktionen "extend"en? Java Basics - Anfänger-Themen 32
B String Array funzt nich wie sollte Java Basics - Anfänger-Themen 3
C Sollte man dies kapseln? Java Basics - Anfänger-Themen 4
D Objektorientierung - wie konsequent sollte man sein ? Java Basics - Anfänger-Themen 30
W Unterschiede bei Zugriff auf Objekt und Klassenvariablen über einen Getter? Java Basics - Anfänger-Themen 2
KogoroMori21 Objektvariablen, Klassenvariablen, Instanzvariablen Java Basics - Anfänger-Themen 1
D Richtige Kommentierung Klassenvariablen Java Basics - Anfänger-Themen 19
Z private Klassenvariablen Java Basics - Anfänger-Themen 8
N Klassenvariablen zurücksetzen Java Basics - Anfänger-Themen 4
G Klassenvariablen & Instanzvariablen Java Basics - Anfänger-Themen 4
J Variablen Unterschied zwischen lokalen-, Instanz-, Klassenvariablen Java Basics - Anfänger-Themen 6
N Vererbung Best Practice: Verfeinerte Klassenvariablen in Unterklasse Java Basics - Anfänger-Themen 5
D Klassenvariablen standardmäßig private oder public? Java Basics - Anfänger-Themen 2
S Initialisierung von Klassenvariablen Java Basics - Anfänger-Themen 7
A Klassenvariablen zusammen fassen Java Basics - Anfänger-Themen 5
G Frage zu Fields - Klassenvariablen Java Basics - Anfänger-Themen 9
A Klassenvariablen Referenz auf ein Objekt Java Basics - Anfänger-Themen 18
M Variablen Gültigkeit von Klassenvariablen bei Vererbung? Java Basics - Anfänger-Themen 4
J Klassenvariablen lesen Java Basics - Anfänger-Themen 13
B Datentypen Klassenvariablen Java Basics - Anfänger-Themen 2
G OOP Verständisfrage zu Klassenvariablen Java Basics - Anfänger-Themen 5
C Klassenvariablen und Klassenmethoden Java Basics - Anfänger-Themen 17
J Problem mit inneren Klassen und Klassenvariablen Java Basics - Anfänger-Themen 11
X Zugriff auf Klassenvariablen NUR mit get/set Methoden? Java Basics - Anfänger-Themen 8
W Klassenvariablen und Werte ausgeben Java Basics - Anfänger-Themen 2
D Globale Klassenvariablen. Java Basics - Anfänger-Themen 12
7 Lokale Variablen, Klassenvariablen, Instanzvariablen Java Basics - Anfänger-Themen 15
H Klassenvariablen,methoden Java Basics - Anfänger-Themen 7
M Zugriff auf Klassenvariablen Java Basics - Anfänger-Themen 8
C Setter-Methode mit final-Attribut Java Basics - Anfänger-Themen 9
I Variable innerhalb Methode: Local variable test defined in an enclosing scope must be final or effectively final Java Basics - Anfänger-Themen 3
J final attribute erben Java Basics - Anfänger-Themen 2
L Methode implementieren, Parameter die übergeben werden sind final Java Basics - Anfänger-Themen 4
A final String verrechnen Java Basics - Anfänger-Themen 2
N Wie kann ich eine meine Variable Final machen? Java Basics - Anfänger-Themen 1
A Variablen zum final verändern Java Basics - Anfänger-Themen 4
D Interface Final für Parameter in überschriebenen Methoden? Java Basics - Anfänger-Themen 3
E Sinn: final in Parameterliste verwenden Java Basics - Anfänger-Themen 2
M Iterator cannot refer to a non final... Java Basics - Anfänger-Themen 20
shiroX Klassen Klasse/Methode private final jUnit-Fehler Java Basics - Anfänger-Themen 5
D Kapselung final Variablen mit Getter? Java Basics - Anfänger-Themen 2
R JTextArea final Status ändern Java Basics - Anfänger-Themen 11
F Static final Klasse Java Basics - Anfänger-Themen 0
S Kopierkonstrukter eines Objekts mit final Attributen Java Basics - Anfänger-Themen 6
T Schlüsselworte final Java Basics - Anfänger-Themen 1
M Wann final verwenden? Java Basics - Anfänger-Themen 5
F Methoden Cannot refer to a non-final variable.. verständnisproblem. Java Basics - Anfänger-Themen 7
C Klassen Minesweeper Problem. int needs to be final (inner class problem) Java Basics - Anfänger-Themen 3
R Variablen final String Variable als Attribut veränderbar? Java Basics - Anfänger-Themen 21
U final Instanz Java Basics - Anfänger-Themen 11
W run Methode in Time erzwingt final Java Basics - Anfänger-Themen 3
D Polymorphie final class Java Basics - Anfänger-Themen 2
C Erste Schritte felder, die public final sind Java Basics - Anfänger-Themen 6
H static final vs. final static Java Basics - Anfänger-Themen 3
A final und extends Java Basics - Anfänger-Themen 14
N Bessere Performance durch final: wann denn überhaupt? Java Basics - Anfänger-Themen 28
xehpuk Compiler-Fehler final Variable in try-catch Wert zuweisen Java Basics - Anfänger-Themen 8
J final variablen Java Basics - Anfänger-Themen 3
P Variablen static final boolean Java Basics - Anfänger-Themen 9
S Interface Final und interface Java Basics - Anfänger-Themen 6
ruutaiokwu final wenn immer möglich verwenden? Java Basics - Anfänger-Themen 30
N local variable model is accessed from within inner class; needs to be declared final Java Basics - Anfänger-Themen 4
C Error: The final local variable variable cannot be assigned, since it is defined in an enclosing typ Java Basics - Anfänger-Themen 4
T Verständnis von "final" und "static" Java Basics - Anfänger-Themen 6
T In methode Final Objekte übergeben? Java Basics - Anfänger-Themen 9
C final variable Java Basics - Anfänger-Themen 4
G Poi 3.5-Final zum laufen bringen Java Basics - Anfänger-Themen 2
H final/static Vererbung Java Basics - Anfänger-Themen 4
P Can not refer to a non final variable... Java Basics - Anfänger-Themen 3
H Variablen final? Java Basics - Anfänger-Themen 3
T Warum muss diese Variable final deklariert werden? Java Basics - Anfänger-Themen 5
G final Variablen in enhanched-for Java Basics - Anfänger-Themen 2
V Frage zu final und Class bzw. Class.cast Java Basics - Anfänger-Themen 5
G static final Java Basics - Anfänger-Themen 7
Q Vector verändert trotz final seine Größe Java Basics - Anfänger-Themen 5
A final Variablen und der GarbageCollector Java Basics - Anfänger-Themen 2
G OOP - final Java Basics - Anfänger-Themen 2
B objekt wann als final deklarieren? Java Basics - Anfänger-Themen 2
J Interface: The final field Variablen.N cannot be assigned Java Basics - Anfänger-Themen 2
B privat mit und ohne final Java Basics - Anfänger-Themen 4
B final vor Funktionsparameter? Java Basics - Anfänger-Themen 21
D Static, final Objekte mit Exceptions im Konstruktor Java Basics - Anfänger-Themen 2
W Fehlermeldung "...needs to be declared final" ! Java Basics - Anfänger-Themen 4
N Wieso final ? Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben