Dator > java 1,5 enum tutorial

  • java 1,5 enum tutorial


  • ENUM typen är en ny funktion i Java 1. 5. 0 språk , för att lösa brister i det sätt uppräknade värden har hanterats i tidigare Java -versioner . I sin mest grundläggande antar den en struktur som liknar den enum typ i C-baserade språk , men det är mycket mer kraftfull

    Enum Object

    Innan vi går vidare till enums själva , är det bäst att illustrera problemet att den nya enum typ skapades för att lösa . Betrakta följande klass : />
    public class Kalender {
    int dayOfWeek ;

    public static final int måndag=0 ;
    public static final int tisdag=1 ,
    public static final int onsdag=2 ;
    . . . .

    void setDayOfWeek ( int datum ) { . . . }
    }

    Denna klass lagras dagen i veckan hjälp av en uppsättning räknas konstanter med heltalsvärden på 0-7 , var och en motsvarar en annan dag , och det är troligt att andra utvecklare använder den här klassen kommer att använda dessa konstanter när du använder klassen . Men upprätthåller ingenting här . Andra klasser kunde ignorera konstanter , använda egna konstanter ( med början söndag , kanske) av misstag , eller ens , som ett resultat av en bugg , passera i "8 " som en dag i veckan , eventuellt gör en bugg att propagera vidare än det borde . Det är också särskilt intetsägande i felsökning , eftersom värdet av " dayOfWeek "att skrivas ut till konsolen eller en debugger helt enkelt som ett heltal som måste slås upp i källkoden . Enums är utformade för att behandla alla dessa frågor . Följande är i samma klass , med hjälp av enum typ istället för en uppsättning uppräknade konstanter :

    public class Kalender {
    offentlig enum Day { måndag , tisdag , onsdag , torsdag , fredag , lördag , söndag
    }
    Dag dayOfWeek

    void setDayOfWeek ( Dag d) { . . . }
    }

    Ovanstående kod , förutom att renare och mer lättläst , behandlar alla de problem som anges ovan uppräknade konstanter . Kunder är nu tvungna att använda endast de uppräknade värdena själva och debuggers kommer att visa de uppräknade värdet namn och inte ett heltal. Dessutom enums har ett antal andra fördelar . Till exempel kan de användas med den nya för-varje loop funktion som lades till i Java 1. 5. 0 . Kalendern klass skulle kunna innefatta metod så här :

    void () {
    för ( dag D : Dag . värden ()) {
    System. out. println ( "Idag är " + d ) ;
    }
    }

    Denna metod kommer att iterera igenom alla dagar och skriva ut deras namn .

    Enums finns klasser i sin egen rätt , vilket innebär att de kan ha sina egna metoder och konstruktorer . Tänk på följande enum , som lagrar tecken i en pjäs , så med en kort beskrivning av denna karaktär : />
    offentlig enum Karaktär {
    MYSTERIOUS_MAN ( " . Lång, mörk och stilig " ) ,
    MYSTERIOUS_WOMAN ( " Iklädd en röd klänning . " ) ,
    huvudpersonen ( " Dashing och heroiska . "),
    antagonist ( " Oozing onda . ");

    String beskrivning ;

    Character ( String beskrivning ) {
    this. description=beskrivning ;
    }
    }


Previous:Vilka är fördelarna med Java uppgradera ? Next:hur man kan spara en vektor till en fil i C + +





Relaterade artiklar


  • hur man byter toner i en LaserWriter 630
  • hur du ansluter en mini Mac till en HDMI-anslutning
  • hur man kan återställa en Maxtor One Touch 4 till den status det hade när jag köpte den
  • beskriver anslutning av frontpanelen på ATX moderkort
  • Hur man använder en G-DRIVE Mini med en Mac
  • hur du ställer syntax markören standard i Visual Basic
  • hur man uppgraderar en IBM Aptiva cpu dator
  • whiteboard teknik
  • vad är T2400 processor?
  • hur man spelar in med FIREPOD