Java - 새로운 객체로 바꾸기
- 일부 기능 단위의 코드를 분리하는 경우
Program
import java.awt.event.WindowListener;
public class Program {
public static void main(String[] args) {
GameFrame frame = new GameFrame();
WindowListener listener = new GameWindowListener();
frame.addWindowListener(listener);
frame.setVisible(true);
}
}
GameFrame
import java.awt.Frame;
import java.awt.Graphics;
public class GameFrame extends Frame{
@Override
public void paint(Graphics g) {
super.paint(g);
g.drawRect(100, 100, 200, 100);
}
}
GameWindowListener
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import javax.swing.JOptionPane;
public class GameWindowListener implements WindowListener {
@Override
public void windowOpened(WindowEvent e) {
}
@Override
public void windowClosing(WindowEvent e) {
JOptionPane.showMessageDialog(null, "Good bye~~");
System.exit(0);
}
@Override
public void windowClosed(WindowEvent e) {
}
@Override
public void windowIconified(WindowEvent e) {
}
@Override
public void windowDeiconified(WindowEvent e) {
}
@Override
public void windowActivated(WindowEvent e) {
}
@Override
public void windowDeactivated(WindowEvent e) {
}
}
-> 강제로 종료되게 했다. ![인터]](/assets/images/인터.JPG)
인터페이스가 일부기능에대해서 사용자에게 (내가결정할수없으니) 만들라고 미뤄둘때도 인터페이스 결합으로 미룰수가있다.
댓글남기기