L'exemple est tout simple.
Lorsque je ferme la JFrame, j'esperais avoir deux lignes *finalize qui s'impriment sur la console et ce n'est pas le cas. Donc je me demande si l'espace alloué est bien rendu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51 package pack1_finalize; import javax.swing.*; import java.awt.event.*; import java.awt.*; public class Main { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub new JFrameDim(); } } class JFrameDim extends JFrame { public JFrameDim() { add(new JPanelDim()); setSize(400, 600); setVisible(true); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent we) { setVisible(false); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); dispose(); System.gc(); System.out.println("harg je ne vois pas les finalize. Suis bien mort???"); } }); } public void finalize() { System.out.println("JFrameDim.finalize:"); } } class JPanelDim extends JPanel { JPanelDim() { setBackground(Color.black); } public void finalize() { System.out.println("JPanelDim.finalize:"); } }
Partager