Ifølge TIOBE indeksen, er Java nummer 1 ranking programmeringsspråk i verden på det tidspunktet denne artikkelen publikasjonen. Det er mye brukt , kraftig og ganske lett å lære . Den har et stort økosystem drevet av et enormt antall utviklere og et stort utvalg av tilgjengelige verktøy. Java er objektorientert og gir mange objektorienterte verktøy for forskjellige slags problemer . Abstrakte klasser og grensesnitt er to viktige verktøy i Java sin verktøykasse . Objektorientert programmering
objektorientert programmering er den dominerende programmering paradigme . I stedet for å vise programmering som å skape en liste med instruksjoner for datamaskiner å utføre , OOP programmerere lage medlemmer --- disse kalles "objekter" --- av et digitalt samfunn at de deretter orkestrere å gjøre hva de vil . Dette oppnås ved å sende meldinger til stedene. Objektene deretter svare på disse meldingene. Programmerere bruke disse objektene og deres reaksjoner for å lage programvare .
Klasser
Klassene er en avgjørende del av objektorientert programmering. OOP programmerere definerer objektene de bruker ved å lage klasser og definere hvordan de klasser av objekter oppfører seg . Klassene er en spesiell type objekt hvis jobb det er på å bruke objekter med definerte atferd. Klasser også kan arve fra andre klasser , eller kopiere deres oppførsel .
Grensesnitt
Grensesnitt er en spesiell type av klasse. Grensesnitt fungere som en mal for andre klasser . De erklærer atferd som arver klasser må definere . De gjør imidlertid ikke iverksette noen atferd . Det eneste formålet med et grensesnitt er å definere hva atferd en arve klasse må stille ut . Grensesnitt er nyttig for å håndheve en enhetlig grensesnitt for lignende objekter . Grensesnitt kan bare arvet fra ; . De kan ikke brukes til å opprette objekter
abstrakte klasser
abstrakte klasser er lik grensesnitt , kan imidlertid abstrakte klasser også gjennomføre atferden av underklasser . Abstrakte klasser kan brukes som grensesnitt i situasjoner der underklasser har felles atferd . Abstrakte klasser er nyttige i programvare som programrammeverk , hvor utviklere trenger noen standard funksjonalitet fra underklasser de definerer. Abstrakte klasser kan bare arvet fra . De kan ikke brukes til å opprette objekter .