Answer Posted / ramanareddy333
every class inherits the finalize() method from
java.lang.Object
the method is called by the garbage collector when it
determines no more references to the object exist
the Object finalize method performs no actions but it may
be overridden by any class
normally it should be overridden to clean-up non-Java
resources ie closing a file
if overridding finalize() it is good programming practice
to use a try-catch-finally statement and to always call
super.finalize() (JPL pg 47-48). This is a saftey measure
to ensure you do not inadvertently miss closing a resource
used by the objects calling class
protected void finalize() throws Throwable {
try {
close(); // close open files
} finally {
super.finalize();
}
}
any exception thrown by finalize() during garbage
collection halts the finalization but is otherwise ignored
finalize() is never run more than once on any object
| Is This Answer Correct ? | 4 Yes | 1 No |
Post New Answer View All Answers
Can a static block throw exception?
Is null in java?
Define locale.
What is native method in java?
How many types of exception can occur in a java program?
What is casting in java programming?
What are the advantages of exception handling?
which is advanced deep technology in java launched by the sun microsystem??? The answer is very logical If u need correct answer mail me at priya_gupta@gmail.com
How will you call an Applet using Java Script Function?
What is lexicographically smallest string?
What happens if a try-catch-finally statement does not have a catch clause to handle an exception that is thrown within the body of the try statement?
what is the difference between a threads start() and run() methods? : Java thread
Explain a situation where finally block will not be executed?
How can we access some class in another class in java?
Which class is the superclass for every class in java programming?