ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • The Finalize Method
    컴퓨터/JAVA 2006. 6. 15. 11:08

    객체가 서비스로부터 제거 되었을 때 작동할 행동을 정의 하자.
    (번역 하니까 이상하군...)

    예제.

    public class ShutdownDemo {
      public static void main(String[] args) throws Exception {

      // Create an Object with a finalize() method.
      Object f = new Object() {
           public void finalize() {
               System.out.println("Running finalize()");
           }
      };

      // Add a shutdownHook to the JVM
      Runtime.getRuntime().addShutdownHook(new Thread() {
           public void run() {
               System.out.println("Running Shutdown Hook");
           }
      });

      // Unless the user puts -f (for "free") on the command line,
      // call System.exit while holding a reference to
      // Object f, which can therefore not be finalized( ).
      if (args.length == 1 && args[0].equals("-f")) {
           f = null;
           System.gc();
      }

      System.out.println("calling System.exit()");
      System.exit(0);
      }
    }


    source: Chapter 9, Object Oriented Technique, Java Cookbook 2nd Edtion.

Designed by Tistory.