1, 상속 스레드의 방법으로 스레드를 만들 수 있습니다
공공 클래스는 FirstThread (가) 확장 스레드 { 공공 무효 실행 () { // 현재의 thread의 이름을 얻을 에서 System.out.println ( "현재의 thread :"+ getName ()); } 공공 정적 무효 메인 (문자열 [] 인수를) { 새로운 새로운 FirstThread ( ) .start (); } }
2,의 Runnable 인터페이스를 구현하여 스레드를 생성
공공 클래스는 SecondThread 구현을 실행 가능한 { @Override 공공 무효 RUN () { // 현재의 thread의 이름을 얻을 에서 System.out.println ( "현재의 thread"+를 ;는 Thread.currentThread () getName ().) } 공공 정적 무효 메인 (문자열을 []에 args) { secondThread secondThread = 새로운 새 secondThread () 새로운 새 스레드 (secondThread) .start (); } }
3, 호출 인터페이스를 구현하여 값을 반환하는 스레드를 만들
공공 클래스는 ThreeThread 구현을 주는, Callable <문자열> { @Override 공공 문자열 전화 () 던져 예외 { 에서 System.out.println ( "현재의 thread :"+ .는 Thread.currentThread () getName ()); 반환 ! "반환 결과 스레드를" ; } 공공 정적 무효 메인 (문자열 []에 args) 발생 예외 { // 1 인터페이스 클래스 호출 가능 생성 및 메소드 호출기구. ThreeThread threeThread = 새로운 새 ThreeThread (); // 2 FutureTask 호출 가능 객체 포장하는 데 사용 <문자열 FutureTask을 > 결과 = 새로운 새FutureTask <> (threeThread) // 3, FutureTask 스레드 객체는 스레드 만들 목적으로 사용할 새로운 새 ; .start () 스레드 (결과) // 서브 스레드 실행이 끝난 후 리턴 액세스를 얻을 FutureTask 객체의 메소드를 호출 4 값 // 연산 결과를 얻을 수있다 동기화 프로세스, 즉 결과를 획득하기 위해 수행하는 방법 호출을 수행 에서 System.out.println을 (result.get ()); } }