Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is there any relation between the class that implements interface and that interface?

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!

like image 925
Johanna Avatar asked Jun 26 '09 16:06

Johanna


People also ask

What is the relationship between an interface and the class that implements it?

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.

Can classes and interfaces related to each other explain its differences?

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.


1 Answers

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.

like image 126
OscarRyz Avatar answered Sep 30 '22 05:09

OscarRyz