"Hej, Amigo! Bilaabo kommer att berätta skillnaderna mellan en abstrakt klass och ett gränssnitt. Det finns flera."
Abstrakt klass | Gränssnitt |
---|---|
Arv | |
En abstrakt klass kan bara ärva en klass men den kan ärva hur många gränssnitt som helst . | Ett gränssnitt kan inte ärva klasser , men det kan ärva hur många gränssnitt som helst . |
Abstrakta metoder | |
En abstrakt klass kan innehålla abstrakta metoder . Men den kanske inte har några alls. | Alla ett gränssnitts icke-statiska och icke-standardmetoder är abstrakta, dvs. de har ingen implementering. Ett gränssnitt kan inte ha några metoder alls. |
Metoder med en implementering | |
En abstrakt klass kan innehålla metoder med en implementering . | Ett gränssnitt kan ha standardmetoder . |
Data | |
Inga begränsningar. | Ett gränssnitt innehåller endast offentliga slutliga statiska data. |
Objektskapande | |
Du kan inte skapa en instans av en abstrakt klass. | Du kan inte skapa en instans av ett gränssnitt. |
"Det är min förståelse. Kort och rakt på sak."
"Tack, Amigo."
GO TO FULL VERSION