A sentimental robot

Thread 본문

Java

Thread

GOD03219 2017. 12. 29. 11:49

public class Test01 extends Thread {

 // 스레드 쓰는 방법1. Thread 객체 상속받기


 public static void main(String[] args) {

 

  Test01 t01 = new Test01();
  t01.start();     // 대기상태 ; runnable state

 

 }

}





public class Test02 implements Runnable {

 // 방법2. Runnable interface를 상속 받아서 스레드가 아니라 스레드를 쓸 수 있는 환경을 만든다.


 public static void main(String[] args) {

 

  Test02 t02 = new Test02();     // t02.start(); t02는 스레드가 아니기 때문에 못부름
  Thread th = new Thread(t02); // 스레드 생성자가 오버로딩
  th.start();
  

 

 }

 @Override
 public void run() {
 

  }

}


 방법1 예제

 


 



public class Test01 extends Thread {


 public Test01(String string){
  super(string);
 }
 public void run(){
  
  for(int i=0; i<10 ;i++){
   
   try{
    sleep(1000);
    System.out.printf("스레드 이름 : %s ", currentThread().getName());
    System.out.println("i="+ i);
   }catch(InterruptedException e){
    e.printStackTrace();
   }
   
  }
  
  
 }
 
 public static void main(String[] args) {

 

  Test01 t01 = new Test01("첫번째");
  t01.start();

 

 }

}


방법2 예제


 


public class Test01 implements Runnable {

 

 @Override
 public void run() {

  for (int i = 0; i < 10; i++) {

   try {
    Thread.sleep(1000);


    System.out.printf("스레드 이름 : %s ", Thread.currentThread(). getName());
    System.out.println("i=" + i);
   } catch (InterruptedException e) {
    e.printStackTrace();
   }

  }

 }

 

 public static void main(String[] args) {

 

  Test01 t01 = new Test01();
  Thread ee = new Thread(t01,"은비");
  ee.start();

 

 }

}


'Java' 카테고리의 다른 글

Exception Handling  (0) 2017.12.29
Thread Synchronization  (0) 2017.12.29
Inner class  (0) 2017.12.29
Interface  (0) 2017.12.29
추상클래스를 이용한 스택,큐!  (0) 2017.12.29