CAN-interface heeft niet-abstracte methoden?
CAN-interface heeft niet-abstracte methoden?

Video: CAN-interface heeft niet-abstracte methoden?

Video: CAN-interface heeft niet-abstracte methoden?
Video: What is Abstraction in OOP, Abstract Methods, and differences between Abstract Class and Interface? 2024, November
Anonim

Interface methoden zijn per definitie openbaar en abstract , dus dat kan niet heb geen - abstracte methoden in uw koppel . op Java, interface methoden zijn openbaar en abstract standaard. Dus de eerste optie is een slechte gewoonte. Punt is dat jij kan niet gebruiken niet - abstracte methoden binnenkant van koppel , omdat zij zijn abstract standaard.

Kan een interface bovendien abstracte methoden hebben?

Een koppel is als een "puur" abstract klas. De klas en al zijn methoden zijn abstract . Een abstract klas kan hebben geïmplementeerd methoden maar de klasse zelf kan niet worden geïnstantieerd (handig voor overerving en na DRY). Als u de implementeert Koppel dan moet je de implementeren methoden in de koppel.

Kan abstracte klasse ook niet-abstracte methoden hebben? Ja, wij kan hebben een abstracte klasse zonder Abstracte methoden aangezien beide onafhankelijke concepten zijn. a. declareren klasse samenvatting betekent dat het kan niet op zichzelf worden geïnstantieerd en kan alleen worden gesubclasseerd. a. declareren methode abstract betekent dat methode zal gedefinieerd worden in de subklasse.

Trouwens, kunnen we methoden definiëren in de interface?

Als een klas, een interface kan hebben methoden en variabelen, maar de methoden verklaard in een koppel zijn standaard abstract (alleen methode handtekening, geen lichaam). Interfaces specificeren wat een klasse moet doen en niet hoe. Als een klasse dit implementeert koppel , dan is het kan worden gebruikt om een verzameling te sorteren.

Moeten alle methoden in een interface worden geïmplementeerd?

Ja, het is verplicht om alles implementeren de methoden in een klasse die een implementeert koppel tenzij en totdat die klasse een abstracte klasse is. Jij hebben twee keuzes: - implementeren elk methode vereist door de koppel of - vermissing aangeven methoden abstract in je klas.

Aanbevolen: