The decisive rule
A class can extends only one class, but can implements as many interfaces as it likes — and it can do both at once:
class Rect extends Shape implements Printable { ... } // one class, one interface
class C extends A, B { } // ERROR: cannot extend two classes
So inheritance is your single "is-a" slot; interfaces are unlimited "can-do" labels.