Class, subclass, abstract class, interface
<p>How do you know whether to use/make a
class, a subclass, an abstract class, or
an interface?</p>

<p>I mean... a class like Math for example it´s not instantiated.
It´s a final class. There´s no IS-A relationship.</p>

<p>That is the purpose of making a class, a class that has no subclasses?</p>

<p>A subclass seems to be/have more specific code of its superclass.</p>

<p>An abstract class is something more generic, it can have implementations for its subclasses.</p>

<p>An interface is used/implemented in abstract classes and subclasses when those need to play a role. </p>

<p>Am I right?</p>

<p>Also..</p>

<p>A superclass is an abstract class?</p>
