Wetenschap
Zie het als een recept:
* interface: De recepttitel en een lijst met ingrediënten, maar geen kookinstructies.
* klasse: Het daadwerkelijke gerecht dat je bereikt na het recept.
Key -kenmerken van interfaces:
* Samenvatting: Ze verklaren alleen methoden en implementeren ze niet.
* publiek: Alle methoden zijn openbaar.
* kan niet worden geïnstantieerd: U kunt geen instantie van een interface direct maken.
* Meerdere erfenis: Een klasse kan meerdere interfaces implementeren, in tegenstelling tot overerving met klassen.
* handhaaft standaardisatie: Interfaces zorgen ervoor dat verschillende klassen die dezelfde interface implementeren hetzelfde gedrag hebben, waardoor uw code voorspelbaarder en onderhoudbaarder wordt.
Waarom interfaces gebruiken?
* abstractie: Verberg implementatiedetails en concentreer je op wat het object doet.
* polymorfisme: Hiermee kunnen verschillende klassen op verschillende manieren op hetzelfde bericht reageren.
* losse koppeling: Bevordert flexibiliteit en modulariteit door interface en implementatie te scheiden.
* testbaarheid: Maakt het gemakkelijker om eenheidstests te schrijven door interfaces te bespotten of te stompen.
Voorbeeld (Java):
`` `Java
interface Drawable {
void Draw ();
}
klasse cirkel implementeert Drawable {
@Override
public void Draw () {
// implementatie voor het tekenen van een cirkel
}
}
klasse vierkant implementeert Drawable {
@Override
public void Draw () {
// implementatie voor het tekenen van een vierkant
}
}
`` `
In dit voorbeeld:
* `Drawable` is de interface, die de methode` Draw () `definieert.
* `Circle` en` Square 'zijn klassen die de' Drawable' -interface implementeren. Ze bieden hun eigen implementatie voor de methode 'Draw ()'.
belangrijke opmerkingen:
* Interfaces zijn een fundamenteel concept in objectgeoriënteerde programmering.
* Verschillende programmeertalen hebben hun eigen syntaxis en conventies voor het definiëren en gebruiken van interfaces.
* Interfaces zijn essentieel voor het creëren van robuuste, onderhoudbare en flexibele softwaretoepassingen.
Wetenschap © https://nl.scienceaq.com