Unit 9: Inheritance - Review Assignment
This review will guide you through an adaptive, research-backed study session. As you answer questions, we will actively assess your current understanding of the material. Questions will continue to be drawn until you have demonstrated mastery of each learning objective.
Reviews are graded based on completion. You will receive full credit for achieving 100% mastery or answering all questions.
Learning objectives for this review:
- Understand the concept of inheritance in Java and demonstrate the ability to create superclasses and subclasses, establishing a hierarchical relationship between classes and facilitating code reuse
- Develop proficiency in writing constructors for subclasses in Java
- Understand the concept of method overriding in Java and demonstrate proficiency in overriding superclass methods within subclasses to provide specialized behavior, ensuring that the subclass method is invoked at runtime
- Understand the purpose and usage of the 'super' keyword in Java, including invoking superclass constructors, accessing superclass members, and resolving method name conflicts in subclass methods
- Develop the ability to create references to superclass and subclass objects within inheritance hierarchies in Java
- Understand the concept of polymorphism in Java and demonstrate proficiency in using it to write flexible and reusable code, including understanding how method overriding and dynamic method dispatch enable polymorphic behavior
- Understand the relationship between all Java classes and the Object class, including how every class implicitly inherits from the Object class, and demonstrate proficiency in using Object class methods such as toString(), equals(), and hashCode()