Thread 예제 둘..

DevTool/Java 2009. 6. 17. 18:18

package ch15;

import java.awt.BorderLayout;
import javax.swing.JPanel;
import javax.swing.JFrame;
import java.awt.GridBagLayout;
import java.awt.FlowLayout;
import javax.swing.JTextField;
import javax.swing.JButton;

public class Clock extends JFrame
{

 private static final long serialVersionUID = 1L;

 private JPanel jContentPane = null;

 private JPanel jPanel = null;

 private JTextField TextClock = null;

 private JButton jButton = null;

 /**
  * This is the default constructor
  */
 public Clock()
 {
  super();
  initialize();
 }

 /**
  * This method initializes this
  *
  * @return void
  */
 private void initialize()
 {
  this.setSize(300, 200);
  this.setContentPane(getJContentPane());
  this.setTitle("JFrame");
 }

 /**
  * This method initializes jContentPane
  *
  * @return javax.swing.JPanel
  */
 private JPanel getJContentPane()
 {
  if (jContentPane == null)
  {
   jContentPane = new JPanel();
   jContentPane.setLayout(new BorderLayout());
   jContentPane.add(getJPanel(), BorderLayout.NORTH);
  }
  return jContentPane;
 }

 /**
  * This method initializes jPanel
  *  
  * @return javax.swing.JPanel
  */
 private JPanel getJPanel()
 {
  if (jPanel == null)
  {
   jPanel = new JPanel();
   jPanel.setLayout(new FlowLayout());
   jPanel.add(getTextClock(), null);
   jPanel.add(getJButton(), null);
  }
  return jPanel;
 }

 /**
  * This method initializes TextClock
  *  
  * @return javax.swing.JTextField
  */
 private JTextField getTextClock()
 {
  if (TextClock == null)
  {
   TextClock = new JTextField();
   TextClock.setColumns(15);
  }
  return TextClock;
 }

 /**
  * This method initializes jButton
  *  
  * @return javax.swing.JButton
  */
 private JButton getJButton()
 {
  if (jButton == null)
  {
   jButton = new JButton();
   jButton.setText("시작");
  }
  return jButton;
 }

}

****** Clocka.java ********
package ch15;

import java.util.Calendar;

public class Clocka
{
 public Clocka()
 {
  // TODO 자동 생성된 생성자 스텁
 }
 
 class Treadmodel extends Thread
 {
  private int i=0;
  @Override
  public void run()
  {
   // TODO 자동 생성된 메소드 스텁
   //super.run();
   for(;;)
   {
    Calendar today = Calendar.getInstance();
    int hour = today.get(Calendar.HOUR);
    int min = today.get(Calendar.MINUTE);
    int sec = today.get(Calendar.SECOND);
    System.out.println(hour+":"+min+":"+sec);
   
    try
    {
 //    Thread클래스를 계승받은것이 아니라 sleep 정적호출
     Thread.sleep(5000);
    }
    catch (InterruptedException e)
    {
     // TODO 자동 생성된 catch 블록
     e.printStackTrace();
    }
   }
  }
 }
 
 public static void main(String[] args)
 {
  new Clocka();
 }
}

Posted by 말없제이
,