Analyze the following code:
```
public class Test extends A {
public static void main(String[] args) {
Test t = new Test();
t.print();
}
}
class A {
String s;
A(String s) {
this.s = s;
}
public void print() {
System.out.println(s);
}
}```
a. The program does not compile because Test does not have a default constructor Test().
b. The program has an implicit default constructor Test(), but it cannot be compiled, because its super class does not have a default constructor. The program would compile if the constructor in the class A were removed.
c. The program would compile if a default constructor A(){ } is added to class A explicitly.
d. The program compiles, but it has a runtime error due to the conflict on the method name print.
bc See the last Note in the section, "Using the super keyword."
You might also like to view...
Multicast event delegates must reference methods:
a) with the same name, but a different signature b) that should all be raised by the same event c) defined earlier in the program d) with different names and different signatures
Which of the following should be virtual if a base class uses dynamic memory allocation?
a. the constructor b. the copy constructor c. the print function d. the destructor
Analyze the following code:
``` class Test { private double i; public Test(double i) { this.t(); this.i = i; } public Test() { System.out.println("Default constructor"); this(1); } public void t() { System.out.println("Invoking t"); } } ``` a. this.t() may be replaced by t(). b. this.i may be replaced by i. c. this(1) must be called before System.out.println("Default constructor"). d. this(1) must be replaced by this(1.0).
A method is an object attribute stored as a variable that describes a particular aspect or feature of the object.
Answer the following statement true (T) or false (F)