Advertisement
Azazavr

com.javarush.test.level06.lesson05.task03

Mar 26th, 2015
231
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.33 KB | None | 0 0
  1. package com.javarush.test.level06.lesson05.task03;
  2.  
  3. /* По 50 000 объектов Cat и Dog
  4. Создать в цикле по 50 000 объектов Cat и Dog. (Java-машина должна начать уничтожать неиспользуемые, и метод finalize хоть раз да вызовется).
  5. */
  6.  
  7. public class Solution
  8. {
  9.     public static void main(String[] args)
  10.     {
  11.         Cat[] c = new Cat[50000];
  12.         Dog[] d = new Dog[50000];
  13.        
  14.         for (int i = 0; i < 50000; i++)
  15.         {
  16.             c[i] = new Cat();
  17.             try
  18.             {
  19.                 c[i].finalize();
  20.             }
  21.             catch (Throwable throwable)
  22.             {
  23.                 throwable.printStackTrace();
  24.             }
  25.             d[i] = new Dog();
  26.             try
  27.             {
  28.                 d[i].finalize();
  29.             }
  30.             catch (Throwable throwable)
  31.             {
  32.                 throwable.printStackTrace();
  33.             }
  34.         }
  35.     }
  36. }
  37.  
  38. class Cat
  39. {
  40.     @Override
  41.     protected void finalize() throws Throwable
  42.     {
  43.         super.finalize();
  44.         System.out.println("Cat destroyed");
  45.     }
  46. }
  47.  
  48. class Dog
  49. {
  50.     @Override
  51.     protected void finalize() throws Throwable
  52.     {
  53.         super.finalize();
  54.         System.out.println("Dog destroyed");
  55.     }
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement