Examveda

What is the output of the program?
class MyClass{
      MyClass(){
            System.out.print("one");
      }
      public void myMethod(){
            this();
            System.out.print("two");
      }
}
 
public class TestClass{
      public static void main(String args[]){
            MyClass obj = new MyClass();
            obj.myMethod();
      }
}

A. two one one

B. one one two

C. one Exception

D. Compilation Error

E. None of these

Answer: Option D

Solution (By Examveda Team)

The code will result in a compilation error because in the method myMethod, the use of this() is incorrect.

In Java, this() is used to call another constructor, but it can only be used in a constructor, not in a method.

Using this() in myMethod causes a compilation error.

Thus, the program will not compile, and the correct answer is a Compilation Error.

This Question Belongs to Java Program >> Constructors And Methods

Join The Discussion

Comments (1)

  1. Sameer Verma
    Sameer Verma:
    1 year ago

    In Java, the this() call can only be used within a constructor to call another constructor in the same class. You cannot use this() inside a regular method like myMethod() to invoke a constructor.

Related Questions on Constructors and Methods

What is a constructor in Java?

A. A special method to create instances of classes

B. A method used for mathematical calculations

C. A method to perform string manipulations

D. An exception handling mechanism