Wenn Sie zu wählen, Variablen zu deklarieren als static final
Habe ich verwendet, final und static Variablen als gut. was ich gefunden habe über diese Variablen ist,
Letzte variable
-
Einer final-variable kann nur einmal initialisiert werden, entweder über eine Initialisierung oder eine abtretungserklärung.
-
Anders als der Wert einer Konstante wird der Wert der final-variable nicht unbedingt zur Kompilierzeit bekannt ist.
welche Variablen sollte ich erklären, wie final-
Meistens nutze ich die Variablen, deren Wert konstant ist universell und kann nie geändert, wie der Wert von PI.
public static final double PI = 3.141592653589793;
statische Variablen
-
Dies sind jene Variablen, die gehört zur Klasse und nicht zum Objekt(Instanz).
-
Statische Variablen werden nur initialisiert, einmal zu Beginn der Ausführung .
-
Einer einzigen Kopie für die gemeinsame Nutzung durch alle Instanzen der Klasse
-
Einer statischen Variablen kann direkt zugegriffen werden, indem Sie den Namen der Klasse und braucht nicht jedes Objekt.
welche Variablen sollte ich erklären, wie final-
Meiste Zeit verwende ich die Variablen die ich initialisieren möchten, nur einmal, und verwenden Sie Sie in den nunmehr gesamten Klasse.
Bei Verwendung der statischen variable
Nun, stieß ich auf einen Begriff final static
in einem meiner Datenbank-Projekt. Ich fand, dass einige der Objekte der Datenbank oder auch die Datenbank-version deklariert wurden, als statci Finale.
static final String DATA_BASE = "BackUpDatabase.db";
static final int DATA_BASE_VERSION = 1;
Nun, meine Frage ist, welche Variablen sollten erklären wir, wie final
oder static
oder final static
, als mit einer von Ihnen hätte das Problem gelöst, dann wyh beide zusammen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Here global means across all the instances of a java class **where constant is declared**
Variablen deklariert, die als
static final
(oder Umgekehrt) verstanden werden, um sinnvolle Konstanten, und namentlich werden in allen upper-case mit Unterstrichen, die für Räume.Ein Beispiel für eine Häufig auftretende Konstante ist
Integer.MAX_VALUE
oderMath.PI
.-
static
in java bedeutet, dass die Klasse Mitglied. Seine teilen sich alle Instanzen der Klasse.-
final
Schlüsselwort in java bedeutet, Konstante, aber unterschiedliche interpretation je nachdem, was Ihr aufgetragen wird.- Wenn wir
static final
auf ein Feld, betrachten Sie es als eine Globale variable.-
PI
ist die statische variable der Klasse Math und der direkt Zugriff über den Namen der Klasse, alsMath.PI
.- Verwenden, werden alle Buchstaben in Großbuchstaben zu definieren Sie eine statische Finale Variablen.
endgültige interpretation:
final variable :
Sein Wert kann nicht geändert werdenfinal method :
Es nicht überschrieben werden kannfinal class :
Es kann nicht verlängert werdenfinal Parameter :
Sein Wert kann nicht geändert werden, die es erhält vom Anrufer argumentfinal Object Reference Variable :
Es nicht finden auf jedem anderen Objekt, andere als die, die derzeit bezogen aufletzten sagt nur, dass der Wert nach der Initialisierung nicht geändert werden kann; statische sagt, dass das Attribut gehört zur Klasse und NICHT von Objekten.
So, wenn Sie sagen, der statischen; dies bedeutet, es ist nur eine Kopie der variable, und es kann nicht geändert werden.
Deklarieren von Variablen nur als statische führen kann, zu ändern, deren Werte durch eine oder mehrere Instanzen einer Klasse in der Sie deklariert ist.
Deklarieren Sie als static final wird Ihnen helfen, zu erstellen Sie eine KONSTANTE, da @Vulcan erzählte. Nur eine Kopie vorhanden ist, die zugegriffen werden kann von überall.
Statische Variable
vorhanden in derselben Klasse .
Klasse . wenn wir den Wert ändern, dann werden alle Objekt der Klasse erhalten
neuer Wert ,Alter Wert verloren.
Letzte variable
Dieser Wert der variable kann initialisiert werden, indem zwei Wege:
this.finalvariable = newfinalvariablevalue;
Einmal initialisiert, kann es nicht geändert werden, durch irgendeine Methode (Statisch oder nicht-statisch).
statische Methoden oder Klassen sind implizit final .
Denn es ist nur eine Kopie von dieser Methode existieren für alle Objekte, was bedeutet, dass Unterklassen dont haben Zugriff auf die Kopie zu ändern.
können sagen, Sie haben eine Methode in der übergeordneten und Sie nicht möchten, Unterklassen zu ändern, diese Methode.. nur erklären, sondern die übergeordnete Methode als final. Hier gehen Sie.