Analyze the following code carefully. Choose a statement from the options below. class TempClass { int i; public void TempClass(int j) { int i = j; } } public class C { public static void main(String[] args) { TempClass temp = new TempClass(2); } } Group of answer choicesThe program has a compile error because TempClass does not have a default constructor.The program has a compile error because TempClass does not have a constructor with an int argument.The program compiles fine, but it does not run because class C is not public.The program compiles and runs fine.
Question
Analyze the following code carefully. Choose a statement from the options below. class TempClass { int i; public void TempClass(int j) { int i = j; } } public class C { public static void main(String[] args) { TempClass temp = new TempClass(2); } } Group of answer choicesThe program has a compile error because TempClass does not have a default constructor.The program has a compile error because TempClass does not have a constructor with an int argument.The program compiles fine, but it does not run because class C is not public.The program compiles and runs fine.
Solution
The program has a compile error because TempClass does not have a constructor with an int argument.
In the given code, TempClass(int j) is not a constructor because it has a void return type. A constructor in Java doesn't have a return type, not even void. So, when we try to create an object of TempClass with an integer argument in the main method, the compiler can't find a matching constructor (because there isn't one), and hence, a compile error occurs.
Similar Questions
Analyze the following code carefully. Choose a statement from the options below. class TempClass { int i; public void TempClass(int j) { int i = j; }}public class C {public static void main(String[] args) { TempClass temp = new TempClass(2); }}Group of answer choices
Analyze the following code. Please select all that apply from the options below. public class Test { public static void main(String[] args) { A a = new A(); a.print(); } } class A { String s; A(String s) { this.s = s; } void print() { System.out.println(s); } } Group of answer choicesThe program has a compile error because class A is not a public class.The program has a compile error because class A does not have a default constructor.The program compiles and runs fine and prints nothing.The program would compile and run if you change A a = new A() to A a = new A("5")
Analyze the following code carefully.public class Test { int x; public Test(String t) { System.out.println("Test"); } public static void main(String[] args) { Test test = new Test(); System.out.println(test.x); }}Group of answer choicesThe program has a compile error because you cannot create an object from the class that defines the object.The program has a compile error because Test does not have a default constructor.The program has a compile error because System.out.println method cannot be invoked from the constructor.The program has a compile error because x has not been initialized.
Analyze the following code and choose two correct statements from below. 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); } } Group of answer choicesThe program does not compile because Test does not have a default constructor Test().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.The program would compile if a default constructor A(){ } is added to class A explicitly.The program compiles, but it has a runtime error due to the conflict on the method name print.
Analyze the following code. Please select all that apply. public class A extends B { } class B { public B(String s) { } } Group of answer choicesThe program has a compile error because A does not have a default constructor.The program has a compile error because the default constructor of A invokes the default constructor of B, but B does not have a default constructor.The program would compile fine if you add the following constructor into A: A(String s) { }The program would compile fine if you add the following constructor into A: A(String s) { super(s); }
Upgrade your grade with Knowee
Get personalized homework help. Review tough concepts in more detail, or go deeper into your topic by exploring other relevant questions.