2) What will be the output of the following program?
package finalize; public class Ques01 { public static void main(String[] args) { MyClass object = new MyClass(); object = null; } } class MyClass { void finalize(){ System.out.println("finalize"); super.finalize(); } }
- The program will output ‘finalize’.
- It is unsure that the finalize() method will be called by the Garbage Collector.
- As soon the object reference ‘object’ is set to null, there is a possibility that the method ‘finalize()’ will be called.
- The program will cause compile-time errors.
Answer
2) d.
The program will cause compile-time errors and the method finalize() is declared with scope ‘protected’ in the base class and it is impossible to reduce the visibility in the derived class.