Java værker op fra bunden som et objekt - orienterede sprog . Dette betyder, at det understøtter klasser, objekter og arv som en del af dens funktionalitet . Disse begreber , som integrerede dele af objektorienteret programmering , indebære, at Java ville støtte metoden altoverskyggende og metode overbelastning. Disse to programmatical begreber hjælper Java-programmører udvide stamklasser og skabe fleksible klasser i deres kode . Java klasser
Klasser er planerne for "objekter " i Java sprog. Programmører skriver klasse til at definere datatyper , der repræsenterer visse aspekter af et program , som f.eks netværksforbindelser eller tegninger. Klassen og objektet er grundlæggende dele af programmeringssproget Java , idet siden grundlæggende datatyper såsom heltal eller bytes , alt i Java er repræsenteret som et objekt . Java-programmer er ofte baseret på samspillet mellem objekter.
Metoder og Inheritance
Når en programmør definerer en klasse, hun definerer "metoder " som en del af denne klasse . Metoder repræsenterer operationer , som et objekt erklæret fra en klasse kan bruge. For eksempel erklærede et objekt fra klassen " Ball " , som indeholder en metode " calculateArea " kunne udføre metoden og beregne sit areal. Desuden kan programmører oprette klasser , at " arve "-funktionalitet fra andre , base klasser. Så en klasse " soccerball " kunne arve funktionalitet fra klassen bold, og bruge " calculateArea "-metoden , som om det var et objekt af en klasse " Ball ".
Overbelastning Metoder
Ofte, når en programmør opretter en klasse , hun måske ønsker at have metoder, der deler det samme navn , men tager forskellige værdier som argumenter . For eksempel kan " calculateArea " metode tage nul argumenter . Men hvis programmøren ønsker en anden version af " calculateArea " metode, der gemmer resultatet i en fil , så hun kunne bare erklære en anden metode med samme navn , der tager en fil objekt som et argument. På denne måde vil compileren vide, hvilken metode til at kalde baseret på den medfølgende argument : Hej
offentlig int calculateArea () { //beregner areal og returnerer et heltal }
public void calculateArea (File o ) {//beregner areal og udskriver det til en fil }
Overstyring Metoder
p Hvis en klasse stammer funktionalitet fra en anden klasse , som i tilfælde af " kugle "og" soccerball , " den klasse, der arver fra basen klassen kan " tilsidesætte " fremgangsmåderne basen klassen . Programmører ofte gør dette, hvis arve klassen har en lignende funktionalitet, men specialiseret til klassen. For at illustrere dette, kan klassen " Ball " har en " calculateArea "-metoden. Klassen " Soccerball ", der arver fra " Ball " kan bruge den oprindelige metode , eller den kan tilsidesætte metoden ved at erklære sin egen version af metoden i sin klasse definition : Hej
class Ball {
offentlig int calculateArea () { //Ball metode }}
class soccerball udvider Ball {public int calculateArea () { //soccerball version , vil ikke kalde Ball version }}