Explain the differences between extending a class ,creating a new class and implementing interface; and when each one of them will appropriate.
Explain the difference between the the equals() method and == operator ? What test does Object.equals() use, and why?
What is the difference between instance of and isInstance?