Statische vs. nicht statische Aufzählung in Java

Shubham Vora 12 Oktober 2023
  1. Einführung in Enum in Java
  2. Statisch vs. nicht-statisches Enum in Java
Statische vs. nicht statische Aufzählung in Java

Dieser Artikel stellt enum in Java und den Unterschied zwischen statischen und nicht-statischen enums vor.

Einführung in Enum in Java

In Java ist ein enum ein Datentyp, den ein Programmierer verwenden kann, um mehrere konstante Variablen zu erstellen. Im Allgemeinen verwendet der Programmierer das Schlüsselwort final, um die konstante Variable in Java zu deklarieren, aber Programmierer können alle finalen Variablen gleichzeitig deklarieren und ihren Anfangswert mit einem enum zuweisen.

Syntax zur Verwendung von Enum:

public enum EnumA { En1, En2 }
public class demo {
  public static void main(String[] args) {
    EnumA test = EnumA.En1;
  }
}

In der obigen Syntax können Benutzer sehen, dass EnumA die konstanten Variablen En1 und En2 enthält und wie wir innerhalb der statischen Methode der Klasse demo auf sie zugegriffen haben.

Statisch vs. nicht-statisches Enum in Java

Nun unterscheiden wir das mit dem Schlüsselwort static und ohne das Schlüsselwort static deklarierte Enum. Benutzer können sich den folgenden Code ansehen, um zu lernen, wie man das Enum mit und ohne das Schlüsselwort static deklariert.

Syntax von Enum mit und ohne Schlüsselwort Static:

public class demo {
  public static enum EnumA { En1, En2 }
  public enum EnumB { En3, En4 }
  public static void main(String[] args) {
    EnumA test1 = EnumA.En1;
    EnumB test2 = EnumB.En3;
  }
}

In der obigen Syntax können Benutzer sehen, dass EnumA mit dem Schlüsselwort static und EnumB ohne das Schlüsselwort static definiert ist. Wir greifen jedoch auf die beiden Konstanten von Enum auf die gleiche Weise zu, was zu dem Schluss führt, dass in Java alle Enum statisch sind, selbst wenn Benutzer bei der Definition das Schlüsselwort static verwenden.

In Java können wir nur auf die statischen Member zugreifen und statische Methoden einer Klasse ohne Objektreferenz innerhalb der Methode public static ausführen.

Außerdem können Entwickler beobachten, dass wir innerhalb der Methode public static auf die Variablen von EnumA und EnumB zugreifen, ohne auf ein Objekt seiner Klasse zu verweisen, was bedeutet, dass Enum, das ohne ein static-Schlüsselwort deklariert wird, standardmäßig ebenfalls statisch ist .

Der Artikel kommt also zu dem Schluss, dass selbst wenn Programmierer das Schlüsselwort static bei der Definition von Enum nicht verwenden, es standardmäßig statisch ist.

Shubham Vora avatar Shubham Vora avatar

Shubham is a software developer interested in learning and writing about various technologies. He loves to help people by sharing vast knowledge about modern technologies via different platforms such as the DelftStack.com website.

LinkedIn GitHub

Verwandter Artikel - Java Enum