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 constructor with an int argument.The program compiles and runs fine.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.
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 constructor with an int argument.The program compiles and runs fine.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.
Solution
The program has a compile error because TempClass does not have a constructor with an int argument.
The reason is that the method TempClass(int j) in the TempClass is not a constructor because it has a void return type. Constructors do not have a return type. So, when we try to create an instance of TempClass with an integer argument in the main method, the compiler cannot find a matching constructor, hence the compile error.
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 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. 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. 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); }
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.
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.