Frage

Ich habe gerade zurück zu MIDP Entwicklung nach etwa 4 Jahren .NET 2 und Java 5 und 6. In dieser Zeit Ich mag bekam Aufzählungen ziemlich viel verwendet wird.

Enum ist eine Sprache-Funktion, die ein Entwickler in einigen Teilen seines Code mehr Vertrauen zu haben, um in der Lage, speziell erlaubt, um Fehler zu vermeiden oder zu erkennen früher (während der Kompilierung). Einige weitere Vorteile finden Sie hier: http: // java.sun.com/j2se/1.5.0/docs/guide/language/enums.html

Ich fand es seltsam, dass ich konnte sie nicht in MIDP 2.0 finden. Ich habe diese Fehlermeldung bekommen:

  

"Typ‚Enum‘sollte nicht als verwendet werden   Kennung, da es ein reservierter   Stichwort von der Quelle Ebene 1.5"

hatte ich einige Erfahrung in Java 1.4 eine Weile zurück, aber ich habe das nicht erinnern. Es gibt sicher einige Features von neueren Versionen Ihrer High-Level-Sprachen, die Sie zu ergreifen bekommen für selbstverständlich ...

Wie auch immer, hier ist eine gute Empfehlung für das, was ohne sie zu tun (wenn Sie MIDP entwickelst oder mit dem Code zu tun vor Java 5): http: // www.javacamp.org/designPattern/enum. html

Fasst it up (für weitere Details und eine gute Erklärung, folgen Sie den vorherigen Link Vielen Dank an den ursprünglichen Autor.):

//The typesafe enum pattern
public class Suit {
    private final String name;

    public static final Suit CLUBS =new Suit("clubs");
    public static final Suit DIAMONDS =new Suit("diamonds");
    public static final Suit HEARTS =new Suit("hearts");
    public static final Suit SPADES =new Suit("spades");    

    private Suit(String name){
        this.name =name;
    }
    public String toString(){
        return name;
    }

}

Haben Sie andere verschiedene Ansätze zu diesem Thema?

War es hilfreich?

Lösung

Das Problem mit MIDP ist, dass es in der Java-Sprache Ebene stecken 1.2 (einige sagen, 1.3 oder 1.4, aber das ist nicht der Punkt) und Aufzählungen wurden in 1,5 eingeführt. Ihr Muster ist ein Schritt in die richtige Richtung, aber fehlt einige Features von „echten“ Aufzählungen, wie eine Ordnungszahl zu jedem Konstante zuweisen.

Sie können laufen in ähnliche Probleme mit Generika, Anmerkungen, etc., die auch in 1.5 eingeführt wurden. Es gibt Werkzeuge, um Java zu konvertieren 1.5 zurück zu 1.2 sind einige aufgelistet hier . So ist, sollten Sie in der Lage sein, in 1,5 und laufen auf MIDP zu codieren. Beachten Sie jedoch, dass diese Werkzeuge verwendet werden kompliziert Ihren Build-Prozess erheblich, während die Lösung, die Sie tut nicht erwähnt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top