Gibt es eine "offizielle" Empfehlung, wie man Java-Enums benennt?
enum Protocol { HTTP, HTTPS, FTP }
oder
enum Protocols { HTTP, HTTPS, FTP }
Ich weiß, dass in der .Net-Welt die Empfehlung lautet, Singular zu verwenden, mit Ausnahme von Aufzählungen, die Bit-Flags darstellen. Nur neugierig, ob es in Java etwas Ähnliches gibt.
Eine verwandte Frage, die .Net-spezifisch zu sein scheint: Singular oder Plural für Aufzählungen?
java
enums
naming-conventions
friederbluemle
quelle
quelle
Antworten:
Aufzählungen in Java (und wahrscheinlich Aufzählungen im Allgemeinen) sollten singulär sein. Der Gedanke ist, dass Sie nicht mehrere Protokolle auswählen, sondern ein Protokoll der möglichen Auswahlmöglichkeiten in der Werteliste.
Beachten Sie das Fehlen von Pluralformen: http://docs.oracle.com/javase/tutorial/java/javaOO/enum.html
quelle
DAYS
,HOURS
...Genauso wie Sie beim Definieren eines Tabellennamens in einer Datenbank oder einer Klasse in Java Singular für Aufzählungen verwenden, ist dies auch die beste Option. Sehen Sie einfach, wie Sie es verwenden werden.
Schreiben wir ein Beispiel:
In singulärer Form sehen Sie deutlich die Absicht des Tagesattributs. "Tag" ist der Wochentag, an dem dieser Termin stattfinden wird. Andernfalls wäre die Signatur der Methode setDay (Days day) gewesen, und sicher werden sich viele Leute fragen, ob der Termin in mehr als einem Tag stattfinden könnte.
Wenn Sie in einem Unternehmen mit 48-Stunden-Schichten arbeiten, können Sie versuchen, Folgendes zu definieren:
Auf diese Weise können Sie die Tage festlegen, an denen Sie zur Arbeit gehen. Trotzdem wird es seltsam aussehen und es gibt eine bessere Option und die Verwendung der Singularform:
Jetzt zeigen Sie wirklich die Bedeutung der Aufzählung. Normalerweise werden Sie in jeder Domäne feststellen, dass die Verwendung von Singular für eine Aufzählung die beste Option ist, da jede Konstante in der Aufzählung nur ein Element ist.
Sie erwähnen auch .NET. Eine "Flags" -Aufzählung in .NET bedeutet nur, dass Sie, wenn Sie diese Aufzählung als Parameter erwarten, tatsächlich eine Liste der Elemente dieser Aufzählung erhalten (als Ganzzahl gespeichert).
Sie könnten dasselbe in Java tun, aber die Aufzählung wird immer noch singulär sein:
Eine einfachere und klarere Möglichkeit (obwohl mehr Speicher benötigt wird), dies mit Java zu tun, ist die Verwendung einer Liste.
quelle