3. Object Oriented Programming¶ 3.1. Basics 3.2. Construction 3.3. Destruction 3.4. Signals 3.5. Properties 3.6. Inheritance 3.7. Abstract Classes 3.7.1. Virtual Methods 3.8. Interfaces 3.8.1. Defining Prerequisites 3.8.2. Defining default implementation in methods 3.8.3. Properties 3.8.4. Mixins and Multiple Inheritance 3.9. Polymorphism 3.10. Method Hiding 3.11. Run-Time Type Information 3.12. Dynamic Type Casting 3.13. Generics 3.14. GObject-Style Construction