Feedback on your performance is printed below. The report lists the objectives for which you answered a question incorrectly.
Determine the effect upon object references and primitive values when they are passed into methods that perform assignments or other modifying operations on the parameters.
Develop code that declares an interface. Develop code that implements or extends one or more interfaces. Develop code that extends an abstract class.
Develop code that declares, initializes, and uses primitives, arrays, enums, and objects as static, instance, and local variables. Also, use legal identifiers for variable names.
Develop code that implements all forms of loops and iterators, including the use of for, the enhanced for loop (for-each), do, while, labels, break, and continue; and explain the values taken by loop counter variables during and after loop execution.
Develop code that implements tight encapsulation, loose coupling, and high cohesion in classes, and describe the benefits.
Explain the effect of modifiers on inheritance with respect to constructors, instance or static variables, and instance or static methods.
Given a code example, determine if a method is correctly overriding or overloading another method, and identify legal return values (including covariant returns), for the method.
Given a scenario, develop code that declares and/or invokes overridden or overloaded methods and code that declares and/or invokes superclass or overloaded constructors.
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.
Recognize the effect of an exception arising at a specified point in a code fragment. Note that the exception may be a runtime exception, a checked exception, or an error.
Write code to define, instantiate, and start new threads using both java.lang.Thread and java.lang.Runnable.