Welcome to Our Website

Java – Interfețe

Publicitate

O interfață este un tip de referință în Java. Este similar cu clasa. Este o colecție de metode abstracte. O clasă implementează o interfață, moștenind astfel metodele abstracte ale interfeței.

împreună cu metodele abstracte, o interfață poate conține, de asemenea, constante, metode implicite, metode statice și tipuri imbricate. Corpurile metodei există numai pentru metodele implicite și metodele statice.,

scrierea unei interfețe este similară cu scrierea unei clase. Dar o clasă descrie atributele și comportamentele unui obiect. Și o interfață conține comportamente pe care o clasă le implementează.

cu excepția cazului în care clasa care implementează interfața este abstractă, toate metodele interfeței trebuie definite în clasă.o interfață este similară cu o clasă în următoarele moduri −

  • o interfață poate conține orice număr de metode.

  • o interfață este scrisă într-un fișier cu un .extensie java, cu numele interfeței care se potrivește cu numele fișierului.,

  • codul octet al unei interfețe apare în a .dosarul clasei.

  • interfețele apar în pachete, iar fișierul bytecode corespunzător trebuie să fie într-o structură de directoare care se potrivește cu numele pachetului.cu toate acestea, o interfață este diferită de o clasă în mai multe moduri, inclusiv −

    • nu puteți instantia o interfață.

    • o interfață nu conține Constructori.toate metodele dintr-o interfață sunt abstracte.

    • o interfață nu poate conține câmpuri de instanță., Singurele câmpuri care pot apărea într-o interfață trebuie declarate atât statice, cât și finale.

    • o interfață nu este extinsă de o clasă; este implementată de o clasă.o interfață poate extinde mai multe interfețe.

    declararea interfețelor

    cuvântul cheie de interfață este folosit pentru a declara o interfață. Aici este un exemplu simplu de a declara o interfață −

    exemplu

    Următorul este un exemplu de interfață −

    interfețele au următoarele proprietăți −

    • o interfață este implicit abstractă., Nu este nevoie să utilizați cuvântul cheie abstract în timp ce declarați o interfață.fiecare metodă dintr-o interfață este implicit abstractă, deci cuvântul cheie abstract nu este necesar.

    • metodele dintr-o interfață sunt implicit publice.

    Exemplu

    /* File name : Animal.java */interface Animal { public void eat(); public void travel();}

    Implementarea de Interfețe

    atunci Când o clasă implementează o interfață, vă puteți gândi, de a semna un contract, acord pentru a efectua comportamente specifice de interfață. Dacă o clasă nu îndeplinește toate comportamentele interfeței, clasa trebuie să se declare abstractă.,

    o clasă utilizează cuvântul cheie implementează pentru a implementa o interfață. Cuvântul cheie implementează apare în declarația de clasă după porțiunea extinde a declarației.

    Exemplu

    Acest lucru va produce următorul rezultat −

    Ieșire

    Mammal eatsMammal travels

    Când imperative metodele definite în interfețe, există mai multe reguli de urmat −

    • Verificat excepțiile nu ar trebui să fie declarate privind punerea în aplicare alte metode decât cele declarate de către interfața metoda sau subclase ale celor declarate de interfață metodă.,

    • semnătura metodei de interfață și același tip de retur sau Subtip trebuie menținute atunci când se înlocuiesc metodele.

    • o clasă de implementare în sine poate fi abstractă și, dacă da, metodele de interfață nu trebuie implementate.când interfețele de implementare, există mai multe reguli −

      • o clasă poate implementa mai multe interfețe la un moment dat.

      • o clasă poate extinde o singură clasă, dar poate implementa multe interfețe.

      • o interfață poate extinde o altă interfață, într-un mod similar cu o clasă poate extinde o altă clasă.,

      extinderea interfețelor

      o interfață poate extinde o altă interfață în același mod în care o clasă poate extinde o altă clasă. Cuvântul cheie extends este folosit pentru a extinde o interfață, iar interfața copil moștenește metodele interfeței părinte.următoarea interfață sportivă este extinsă prin interfețe de hochei și fotbal.interfața de hochei are patru metode, dar moștenește două din sport; astfel, o clasă care implementează hocheiul trebuie să implementeze toate cele șase metode., În mod similar, o clasă care implementează fotbalul trebuie să definească cele trei metode din fotbal și cele două metode din sport.

      extinderea mai multor interfețe

      o clasă Java poate extinde doar o clasă părinte. Moștenirea multiplă nu este permisă. Interfețele nu sunt clase, cu toate acestea, și o interfață poate extinde mai mult de o interfață părinte.

      cuvântul cheie extends este folosit o singură dată, iar interfețele părinte sunt declarate într-o listă separată prin virgulă.,

      De exemplu, dacă Hochei interfață extinsă atât în Sport și de Eveniment, ar fi declarat ca −

      Exemplu

      public interface Hockey extends Sports, Event

      Taguri Interfețe

      utilizarea Cea mai comună de a extinde interfețe apare atunci când părintele interfață nu conține orice metode. De exemplu, interfața MouseListener în java.AW.pachet eveniment extins java.util.EventListener, care este definit ca −

      Exemplu

      package java.util;public interface EventListener{}

      O interfață cu nici metode este menționată ca o marcare de interfață., Există două proiectare de bază scopuri de marcare interfețe −

      Creează un părinte comun − Ca cu EventListener interfață, care este prelungit de zeci de alte interfețe în Java API, puteți folosi o interfata de marcare pentru a crea un părinte comun printre un grup de interfete. De exemplu, atunci când o interfață se extinde EventListener, JVM știe că această interfață special va fi utilizat într-un scenariu de delegare eveniment.

      adaugă un tip de date la o clasă − această situație este în cazul în care termenul, etichetarea vine de la., O clasă care implementează o interfață de etichetare nu trebuie să definească nicio metodă (deoarece interfața nu are niciuna), dar clasa devine un tip de interfață prin polimorfism.

      anunțuri

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *