QUESTION 1:  A) Explain what Inheritance is B) What are the advantages of Inheritance C) What are the problems of Inheritance D) Explain with code, why Java doesn't accept multiple inheritance E) Demonstrate with a practical example how you can implement single level inheritance F) Demonstrate with a practical example how you can implement multi level inheritance  QUESTION 2:  A) Explain what Aggregation in Java is B) What are the advantages of Aggregation C) What are the problems of Aggregation D) Demonstrate with a practical example how you can implement Aggregation in Java  QUESTION 3:  A) What are inner classes in Java B) Demonstrate with a practical example how you can implement inner classes in Java  QUESTION 4:  A) What is encapsulation in Java? B) Demonstrate with a practical example how you can implement encapsulation in Java  QUESTION 5:  A) Java supports method overloading, explain what it means B) Explain the advantages of method overloading C) Demonstrate with a practical example how you can implement method overloading in Java  QUESTION 6:  A) Java supports method overriding, explain what it means B) Explain the advantages of method overriding C) Demonstrate with a practical example how you can implement method overriding in Java  QUESTION 7:  A) Explain what polymorphism is in Java B) Demonstrate with a practical example how you can implement runtime polymorphism in Java  QUESTION 8:  A) Explain what you understand by the term "Abstraction in Java" B) Demonstrate with a practical example how you can implement Abstraction in Java with abstract classes C) Demonstrate with a practical example how you can implement Abstraction in Java with interfaces D) Demonstrate with a practical example how you can implement inheritance within interfaces  QUESTION 9:  A) Explain what a package is in Java B) Why do we need packages in Java C) Demonstrate with a practical example how you can implement packages in Java  QUESTION 10:  A) Explain what constructors in Java are B) Demonstrate with a practical example how