De programmeertaal Java gebruikt klassen en objecten , zodat programmeurs werken met data . Evenals C + + , Java kunnen gebruikers klassen die meerdere gegevenstypen kunnen gebruiken definiëren , teneinde de flexibiliteit en bruikbaarheid van de gecreëerde voorwerpen uitstrekken . Door het nemen van deze notie van flexibele data type gebruik , de zogenaamde " generieke geneesmiddelen , " en het aanbrengen van een recursieve element , kunnen programmeurs ervoor zorgen dat de gebruikers van de objecten slechts bepaalde soorten gegevens in dienst , zodat het algemeen object werkt zoals bedoeld , terwijl nog het toestaan van gebruikers uit te breiden het gebruik van dat object . Klassen en soorten Java functies voornamelijk als een object - georiënteerde programmeertaal . Dit betekent dat programmeurs gebruiken " klassen " specifieke "types " van gegevens te definiëren . Klassen gebruiken ook andere soorten gegevens in hun definitie . In de volgende code bijvoorbeeld klasse Box gebruikt drie integers kader van de definitie : zodat de klasse functioneren van andere programmeurs , zij moeten deze definitie volgt door het leveren van drie getallen . Dit houdt de effectiviteit van klasse Box : klasse Box { int lengte ; int breedte , int hoogte ; openbare Box ( int l , int w, int h ) { //Doos moet integersint lengte gebruiken = l ; int width = w ; int height = h ; } } Soorten Generic Sommige programmeurs echter misschien niet als deze beperking . Sommigen data structuren , bijvoorbeeld , die vereisen dat de gebruiker de gegevensstructuur toegestaan zijn gegevenstype gebruiken binnen de structuur . In dit geval kan de programmeur een "algemene" klasse die een bepaald gegevenstype meekrijgt . Dus , zoals in de volgende code voorbeeld , klasse Box kan nu elk type "T " aan de zijkanten vertegenwoordigen . Dit kan zeer handig zijn als de gebruiker zou willen beide gehele getallen of decimalen te gebruiken om partijen vertegenwoordigen : klasse Box { T lengte ; T breedte , T hoogte ; openbare Box ( T l , T w, T h ) { //Box gebruikt nu soort Tint lengte = l ; int width = w ; int height = h ; } } < br > Generic types recursieve algemene soorten compliceren , kunnen sommige programmeurs spelen met de regels van wat is toegestaan als een algemeen type voor een klasse . Bijvoorbeeld , in plaats van een algemene data type " T ", de programmeur kan een klasse die van hetzelfde type is als serie dient als generieke type te creëren . Het volgende voorbeeld illustreert dit : In plaats van het type T , de klasse gebruikt de generieke type T dat een versie , of " erft " uit , klasse Box vertegenwoordigt : klasse Box < T breidt Box > { Box lengte ; Box breedte ; Box hoogte ; openbare Doos ( Box l , Box w , Box h ) { //Box gebruikt nu uitvoering Box int lengte = l ; int width = w ; int height = h ; } } Nut van recursieve Types In de praktijk lijkt verwarrend en contra - intuïtief . Maar , eigenlijk het vertegenwoordigt een slimme manier voor de maker van de klas om bepaald type gebruik af te dwingen . In dit geval , de gebruiker van de klasse gebruikt type " Box" met generieke type " T " of een algemeen type voor zichzelf . Dit betekent in wezen dat een gebruiker die een object van het type " Box " creëert wordt gedwongen om hetzelfde type ( Box ) gebruiken als de generieke aard in plaats van een integer , decimaal , of iets anders . Hierdoor kan de programmeur om ervoor te zorgen dat bepaald gedrag optreedt wanneer gebruikers omgaan met klassen die ze maken.
|