Käyttöliittymä sisään Java esimerkin kanssa
⚡ Älykäs yhteenveto
Käyttöliittymä sisään Java on vatsalihaksettract-tyyppi, joka määrittää luokan toteuttaman toiminnan, sisältäen vakioita ja abstract-metodit. Tämä resurssi selittää, mikä rajapinta on, miksi sitä tarvitaan, miten sellainen deklaroidaan ja toteutetaan, ja miten rajapinnat eroavat luokista ja abs-rakenteista.tract-luokat.

Mitä käyttöliittymä sisältää Java?
An Käyttöliittymä sisään Java ohjelmointikieli määritellään abs-funktioksitract-tyyppi, jota käytetään luokan käyttäytymisen määrittämiseen. A Java rajapinta sisältää staattisia vakioita ja abstract-metodit. Luokka voi toteuttaa useita rajapintoja. Java, rajapinnat deklaroidaan avainsanalla interface. Kaikki rajapinnan metodit ovat implisiittisesti julkisia ja abstract.
Syntaksi ilmoittamisen rajapinnalle
Jos haluat käyttää rajapintaa luokassasi, lisää luokan nimen perään avainsana ”implements” ja sen perään rajapinnan nimi.
interface { // methods }
Esimerkki käyttöliittymästä
Ymmärrämme nyt rajapinnat Java esimerkin kanssa:
class Dog implements Pet
interface RidableAnimal extends Animal, Vehicle
Napauta täältä jos video ei ole saatavilla.
Napauta täältä jos video ei ole saatavilla
Miksi käyttöliittymä vaaditaan?
Ymmärtääksesi käyttöliittymän käyttöä Java parempi, katsotaanpa asiaa Java esimerkki käyttöliittymästä. Luokalla ”Mediasoitin” on kaksi alaluokkaa: CD-soitin ja DVD-soitin. Kummallakin on oma ainutlaatuinen käyttöliittymän toteutustapansa musiikin toistamiseksi.
Toinen luokka, ”Combo drive”, perii sekä CD- että DVD-levyn (katso kuva alla). Minkä toistotavan sen tulisi periä? Tämä voi aiheuttaa vakavia suunnitteluongelmia ja siten Java ei salli useita perintö.
Otetaan nyt toinen esimerkki koirasta.
Oletetaan, että sinulla on vaatimus, jossa luokka ”koira” perii luokat ”eläin” ja ”Lemmikki” (katso kuva alla). Mutta et voi laajentaa kahta luokkaa JavaMitä siis tekisit? Ratkaisu on käyttöliittymä.
Rajapinnan sääntökirja sanoo:
- A Java käyttöliittymä on 100 % abstract-luokka ja sillä on vain abstract-menetelmät.
- Luokka voi toteuttaa minkä tahansa määrän rajapintoja.
Luokka Dog voi laajentaa luokkaa ”Animal” ja toteuttaa rajapinnan ”Pet”.
Java Rajapintaesimerkki
Ymmärretään alla oleva käyttöliittymäohjelma Java:
Vaihe 1) Kopioi seuraava koodi editoriin.
interface Pet { public void test(); } class Dog implements Pet { public void test() { System.out.println("Interface Method Implemented"); } public static void main(String args[]) { Pet p = new Dog(); p.test(); } }
Vaihe 2) Tallenna, käännä ja suorita koodi. Tarkkaile rajapinnan tulostetta Java ohjelma.
Ero luokan ja käyttöliittymän välillä
| luokka | liitäntä |
|---|---|
| Luokassa voit luoda muuttujien instansseja ja olioita. | Rajapinnassa et voi luoda muuttujien instansseja tai olioita. |
| Luokka voi sisältää konkreettisia (toteutuksineen) metodeja. | Rajapinta ei voi sisältää konkreettisia (toteutuksineen) metodeja. |
| Luokkien kanssa käytettävät käyttöoikeusmäärittelijät ovat private, protected ja public. | Rajapinnassa käytetään vain yhtä määrittelijää – public. |
Milloin käyttää Interfacea ja Vatsalihaksiatract-luokka?
- Käytä vatsalihaksiatract-luokkaa, kun mallipohja on määriteltävä ryhmälle alaluokkia.
- Käytä rajapintaa, kun rooli on määriteltävä muille luokille riippumatta näiden luokkien periytymispuusta.
Täytyy tietää faktoja käyttöliittymästä
- A Java luokka voi toteuttaa useita Java rajapinnat. On välttämätöntä, että luokka toteuttaa kaikki rajapinnoissa ilmoitetut metodit.
- Tunnin tulisi ohittaa kaikki vatsalihaksettracrajapinnassa ilmoitetut t-metodit.
- Rajapinta mahdollistaa viestin lähettämisen objektille riippumatta siitä, mihin luokkaan se kuuluu.
- Luokan täytyy tarjota toiminnallisuus rajapinnassa ilmoitetuille metodeille.
- Kaikki rajapinnan metodit ovat implisiittisesti julkisia ja abstract.
- Rajapintaa ei voida instansoida.
- Rajapintaviittaus voi osoittaa sitä toteuttavien luokkien objekteihin.
- Rajapinta voi ulottua yhdestä tai useammasta rajapinnasta. Luokka voi laajentaa vain yhtä luokkaa, mutta toteuttaa minkä tahansa määrän rajapintoja.
- Rajapinta ei voi toteuttaa toista rajapintaa. Sen on laajennettava toista rajapintaa tarvittaessa.
- Rajapintaa, joka on deklaroitu toisen rajapinnan sisällä, kutsutaan sisäkkäiseksi rajapinnaksi.
- Rajapintamuuttuja on alustettava määrittelyn yhteydessä. Muuten kääntäjä heittää virheen.
- Luokka ei voi toteuttaa kahta rajapintaa Java joilla on samannimisiä, mutta eri paluutyyppisiä metodeja.




