Datamaskin
  | Hjem | Hardware | Nettverk | Programmering | Software | Feilsøking | Systems | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringsspråk
  • Delphi Programming
  • Java Programming
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl Programming
  • Python Programming
  • Ruby Programming
  • Visual Basics Programming
  •  
    Datamaskin >> Programmering >> Java Programming >> Content
    Tre viktigste fordelene med ENUM
    De fleste programmerere vil tildele numeriske verdier til hvert element i en liste, slik som de dagene i uken , for å gjøre koding raskere og for å unngå skrivefeil. Noen programmeringsspråk gi en enumerator type eller enum , som lar deg definere et fast sett med konstanter i en spesiell type. Bruke en enum konstruere har flere fordeler, for eksempel forbedret type matching, evnen til å definere tilpassede metoder , tilgang til automatisk medlemmer tilbys av kompilatoren , og generelt økt lesbarhet og vedlikehold av programmet. Fest Custom Metoder

    Når du bruker enum type, definerer du en ny klasse . Akkurat som med alle andre klasse, kan du inkludere tilpassede metoder og felt i klassen. Dette tillater deg å gi innkapslet funksjonalitet knyttet til enum type. For eksempel definerer følgende en klasse av enum type med gjennomsnittlig lengde-og breddegrad for amerikanske stater . Den inneholder en tilpasset metode , avstand , som beregner avstanden mellom bredde-og lengdegrad sendes som parametere til metoden

    import statisk java.lang.Math * ; . . Public enum State { AK ( 61,3850 , -152,2683 ) , AL ( 32,7990 , -86,8073 ) , ... WV ( 38,4680 , -80,9696 ) , Wyoming ( 42,7475 , -107,2085 ) ;

    private final double breddegrad ; private final double lengde ; State ( dobbel bredde , double lengde ) { this.latitude = breddegrad ; this.longitude = lengde ;} private double breddegrad ( ) {return breddegrad ;} private double lengde ( ) {return lengdegrad ;} private static final double R = 6371 ;
    < p > dobbel avstand ( dobbel lat , dobbel lng ) { //sfærisk lov cosinesreturn cos (sin ( breddegrad ) * sin ( lat ) + cos ( breddegrad ) * cos ( lat ) + cos ( lng - breddegrad) ) * R; } }
    Enhanced Type matching

    Fordi enum typen er en klasse , tvinger det typen matching for å inkludere matching mot sett konstanter definert i enum . Dette hindrer feil ved å sikre at parametre til funksjoner vil alltid inneholde en verdi i enum typen klassen . For eksempel, hvis en funksjon krever en sesong som en parameter , selve parameteren sendes til funksjonen under kjøring vil bli matchet mot de fire tillatte verdiene definert av enum :

    public enum Season { Vår, sommer , vinter , FALL }; offentlig funksjon vær ( enum Season) { ... };
    Forbedret dokumentasjon

    enum konstruksjonen gjør koden lettere å forstå og vedlikeholde . Ved å opprette en enum konstruksjon av medlemmer med meningsfulle navn , du dokumentet kode som du oppretter den. For eksempel , erklærte en enum kalt " Option" gjør det lett å forstå sakene i den "bryteren " statement : en

    enum Option { lagre eller forkaste AVBRYT }; Option pick ; ... switch ( plukke ) {case LAGRE : break ; tilfelle forkaste : break ; tilfelle AVBRYT : break; }
    Automatiske spesielle metoder

    i Java kompilatoren automatisk inn spesielle metoder i klassen for å gjøre det enkelt å utføre vanlige operasjoner . For eksempel , den kompilatoren automatisk setter en metode som kalles "verdier " som returnerer en matrise av enum konstante verdier i den rekkefølgen de ble erklært . Dette gjør iterasjon over enum verdsetter veldig enkelt , som i følgende eksempel : en

    for (måned m : Month.values ​​( ) ) { System.out.println ( "% s har % d dager", m , m.numberOfDays ( )); }

    früher :

     Weiter:
      Relatert Artike
    ·Typer valideringskontroller 
    ·Hvordan lage Java Games 
    ·Hvordan lage den første bokstaven i en streng i Caps i…
    ·Hvordan lære Web Design Raskt 
    ·Hva er en hendelse i Java 
    ·Hvordan ha Java Les tastetrykk som Input 
    ·Forskjellene mellom JSP & JSPF 
    ·Slik installerer Eclipse for BlackBerry 
    ·Hvordan sette opp Struts 
    ·Forskjellen i HashMap og HashSet 
      Anbefalte artikler
    ·Hvordan legge inn en Float Bokstavelige i Java 
    ·Hvordan lage skjemaer med Visual Basic 
    ·Hvordan lage 3D i Java 
    ·Hvordan slå en streng til en VAR navn i PHP 
    ·Python HTML Tutorial 
    ·Hvordan Delsett en Array i MATLAB 
    ·Hvordan lage en MP3-spiller i PHP 
    ·MS Visual Studio Tools for Office- 
    ·AVR Visual Basic Kildekode Language Tutorial 
    ·Slik konverterer Base 10 til Base 16 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/