구현 방법과 상속 방법의 차이점은 무엇입니까?
*차이 :
*상속 된 스레드 : 스레드 코드는 스레드 서브 클래스의 실행 메소드에 저장됩니다.
*런닝 가능 구현 : 스레드 코드는 인터페이스의 서브 클래스의 실행 메소드에 저장됩니다.
* 구현의 이점 : 단일 상속의 한계를 피하십시오.
* 스레드를 정의 할 때 구현 방법을 사용하는 것이 좋습니다. 물론 클래스가 상위 클래스를 상속하지 않으면 스레드 클래스를 상속하여 멀티 스레딩도 구현할 수 있습니다.
*참고 : 실행 가능한 인터페이스는 예외를 던지지 않으므로 그것을 구현하는 클래스는 시도 만 할 수 있으며 던질 수 없습니다.
*Java는 Code Block Synchronized (Object) {동기화 해야하는 코드}를 동기화하는 Multithreading의 보안 문제에 대한 전문 솔루션을 제공합니다.
*동기화 예방 조치 :
*1. 2 개 이상의 스레드가 있습니다
*2. 여러 스레드는 하나의 잠금 (객체)을 사용합니다.
* 동기화의 이점 : 다중 스레드 보안 문제를 해결합니다
* 동기화의 단점 : 다중 스레드가 잠금을 판단해야하므로 더 많은 자원을 소비합니다.
패키지 멀티 스레딩; 클래스 티켓을 구현할 수있는 {// private static int tick = 100; private int tick = 100; object obj = new Object (); // 이미지를 만들거나 클래스를 직접 다시 작성하여 개체를 만듭니다. 다음 키워드는 @overridepublic void run () {while (true) {synchronized (obj) // synchronized (this) {if (tick> 0) {thread.sleep (10);} catch (Exception e) {} system.out.println (thread.currentthread (). getname (). getname (). "+(tick-)+"title "); // tick-;} else {break;}}}}}} public class test {public static void main (string [] args) {ticket t = new ticket (); 런닝 가능한 인터페이스를 구현하는 클래스를 생성하는 클래스를 생성하고 새 스레드 (t) = 새 스레드 (t); // 스레드 (t); // 스레드 생성 t3 = 새 스레드 (t); // 스레드 만들기 스레드 생성 t4 = new 스레드 (t); // 스레드 생성 // 스레드를 열어 줄 t1.start (); t2.start (); t3.start (); t4.start ();}}위의 것은 스레드 클래스를 상속하기 위해 멀티 스레딩 Java를 구현하는 두 가지 방법과 런닝 가능한 인터페이스를 구현하는 방법의 전체 내용입니다. 모든 사람에게 도움이되기를 바랍니다. Wulin.com 더 지원 ~