Consider this class hierarchy:
Book extends Goods
Book implements Taxable
As we know, there is a relationship between a subclass and its superclass (is-a).
Q: Is there any relationship like "is-a" between Book
and Taxable
?
GOOD Answers, but you said that "is-a" is also a relationship between Book
and Taxable
, but "is-a" is a relation between classes, and an interface is not a class!
A class implements an interface, thereby inheriting the abstract methods of the interface. Along with abstract methods, an interface may also contain constants, default methods, static methods, and nested types. Method bodies exist only for default methods and static methods.
A class can inherit another class using extends keyword and implement an interface. Interface can inherit only an inteface. A class can be inherited using extends keyword. Interface can only be implemented using implements keyword.
Yes. The relationship is exactly the same
Book is a Taxable too.
EDIT
An interface is an artifact that happens to match Java's ( and probably C# I don't know ) interface
keyword.
In OO interface is the set of operations that a class is 'committed' perform and nothing more. Is like a contract between the object class and its clients.
OO programming languages whose don't have interface
keyword, still have class interface OO concept.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With