Dator
 |  Startsida |  Hårdvara |  Nätverk |  Programmering |  Programvara |  Felsökning |  System |   
Programmering
  • C /C + + -programmering
  • Computer Programspråk
  • Delphi Programmering
  • Java Programming
  • JavaScript programmering
  • PHP /MySQL Programmering
  • perl Programmering
  • python Programming
  • Ruby programmering
  • Visual Basics Programmering
  • * Dator Kunskap >> Programmering >> Java Programming >> Content

    Java Generic Rekursiva Typer

    programmeringsspråket Java använder klasser och objekt för att tillåta programmerare att arbeta med data . Som C + + , Java även tillåter användare att definiera klasser som kan använda flera datatyper , så att öka flexibiliteten och användbarheten av sina skapade objekt . Genom att ta detta begreppet flexibel datatyp användning , kallad " generika ", och tillämpar en rekursiv inslag , kan programmerare säkerställa att användarna av objekt använder bara vissa typer av data så att det generiska objektet fungerar som avsett och samtidigt tillåta användare att förlänga användningen av alstret. Klasser och typer

    Java-funktioner , främst som ett objektorienterat programmeringsspråk . Detta innebär att programmerare använder "klasser" för att definiera särskilda "typer" av data. Klasser använder även andra typer av data i deras definition . I följande kod , till exempel , använder klass Box tre heltal som en del av sin definition : för att klassen att fungera för andra programmerare , de måste följa denna definition genom att leverera tre heltal . Detta upprätthåller effektiviteten av klassen Box :

    class Box {

    int längd , int bredd , int höjd ,

    offentlig Box ( int l , int w , int h ) { //Box måste använda integersint längd = l ; int width = w , int höjd = h ; } }
    generiska typer

    Vissa programmerare , kan dock inte gillar denna begränsning . Vissa kanske utveckla datastrukturer , till exempel, som kräver att användaren av datastrukturen tillåtas att använda alla datatyper i strukturen. I detta fall , kan programmeraren skapa en " generisk " klass som tar en viss datatyp. Så , som i följande kod t.ex. får klass Box tar nu någon typ " T " för att representera sina sidor . Detta kan vara mycket användbart om användaren kanske vill använda antingen heltal eller decimaltal för att representera sidor :

    klass Box {

    T längd , T bredd , T höjd ;

    offentliga Box ( T l , T w , T h ) { //Box använder nu typ Tint längd = l ; int width = w , int höjd = h ; } } Addera
    generiska Rekursiva typer

    att komplicera generiska typer , kanske några programmerare spela med reglerna för vad som är tillåtet som en generisk typ för en klass . Till exempel , istället för att ha en allmän datatyp " T , " programmeraren kan skapa en klass som tar samma typ som den klass den fungerar som generisk typ av . Följande exempel illustrerar detta : I stället för typ T , används klassen den generiska typen T som representerar en version , eller " ärver " från , class Box :

    klass Box < T utökar Box > {

    Box längd , Box bredd , Box höjd ,

    allmänheten (fält l , Box w , Box h ) { //Box använder nu typ Box int längd = l ; int width = w , int höjd = h ; } } Addera Nyttan av Rekursiv Typer

    I praktiken tycks det förvirrande och krånglig . Men , faktiskt den representerar ett smart sätt för skaparen av klassen att genomdriva viss typ användning . I detta fall använder användaren av klasstyp "Box" med generisk typ "T" som en generisk typ för sig själv. Detta innebär i huvudsak att en användare som skapar ett objekt av typen " Box " tvingas använda samma typ ( Box ) som den generiska typen snarare än ett heltal , decimaltal , eller något annat . Detta gör det möjligt för programmerare att garantera att ett visst beteende uppstår när användare interagerar med klasser som de skapar .

    Tidigare:

    nästa:
    relaterade artiklar
    ·Hur man skapar en meny i Android Programmering
    ·Inkompatibla typer hittades i Java
    ·Hur man kompilerar JNI i Ubuntu
    ·Hur man lägga till en sträng till en annan sträng i …
    ·Hur man ska värdera ett uttryck med en variabel i Java…
    ·Hur man skriver en Java-applet
    ·Hur att upptäcka om en viss Substring existerar i en s…
    ·Hur man gör ett histogram i Java
    ·Hur man gör sidor på Android
    ·Information om Java Training Online
    Utvalda artiklarna
    ·Lägga till text till en etikett på Python
    ·Hur man använder en kombinationsruta i MFC
    ·Hur Split Strängar Använda Java
    ·Hur man gör spalter med div-taggar
    ·Hur ansöker en Array i BorderLayout
    ·Hur man skriver en loop i Visual Basic
    ·Hur man öppnar ett Word-dokument i Visual Basic
    ·Hur får man ett jämnt antal i CPP
    ·Hur man beräknar antal veckor mellan två datum
    ·Vad är en Boolean typ
    Copyright © Dator Kunskap http://www.dator.xyz