"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