Set - 7

Question 16 :

What's an abstract class? 

Answer :

A class that cannot be instantiated. An abstract class is a class that must be inherited and have the methods overridden. An abstract class is essentially a blueprint for a class without any implementation.


Question 17 :

When do you absolutely have to declare a class as abstract?

Answer :

1. When the class itself is inherited from an abstract class, but not all base abstract methods have been overridden.
2. When at least one of the methods in the class is abstract.


Question 18 :

What is an interface class?

Answer :

Interfaces, like classes, define a set of properties, methods, and events. But unlike classes, interfaces do not provide implementation. They are implemented by classes, and defined as separate entities from classes.


Question 19 :

Why can't you specify the accessibility modifier for methods inside the interface?

Answer :

They all must be public, and are therefore public by default.


Question 20 :

What happens if you inherit multiple interfaces and they have conflicting method names?

Answer :

It's up to you to implement the method inside your own class, so implementation is left entirely up to you. This might cause a problem on a higher-level scale if similarly named methods from different interfaces expect different data, but as far as compiler cares you're okay. 
To Do: Investigate