Section 5: OO Concepts

1 Develop code that implements tight encapsulation, loose coupling, and high cohesion in classes, and describe the benefits.
Discussion.

5.2 [CJ2 Ch. 4] Given a scenario, develop code that demonstrates the use of polymorphism. Further, determine when casting will be necessary and recognize compiler vs. runtime errors related to object reference casting.
Discussion,

3 Explain the effect of modifiers on inheritance with respect to constructors, instance or static variables, and instance or static methods.
Discussion.

4 Given a scenario, develop code that declares and/or invokes overridden or overloaded methods and code that declares and/or invokes superclass, overridden, or overloaded constructors.
Discussion.

5 Develop code that implements "is-a" and/or "has-a" relationships.
Discussion.