Prefacio
La lectura múltiple es algo que a menudo encontramos durante el proceso de desarrollo y también es un dominio indispensable y necesario. Cuando sabemos que necesitamos hacer un desarrollo de subprocesos múltiples, lo primero que necesitamos saber es naturalmente cómo implementar múltiples subprocesos, es decir, cómo debemos crear hilos.
Crear hilos en Java es lo mismo que crear operaciones de objetos para clases ordinarias. Podemos crear hilos de dos maneras:
1. Heredar la clase de subprocesos y anular el método run ().
2. Implemente la interfaz ejecutable e implementa el método run ().
Método 1: heredar la clase de hilo
El código es muy simple
Primero sobrecargue un constructor para que podamos nombrar el hilo.
Reescribe el método Run ().
Aquí primero dejamos que el hilo salga el nombre de la subproceso + inicio.
Luego, emite el nombre del subproceso + un número incremental cada 5 ms.
/*** Creado por holten.gao el 2016/10/17. */public class Threadthread extiende Thread {public Threadthread (name de cadena) {super (nombre); } @Override public void run () {System.out.println (this.getName ()+"Inicio!"); for (int i = 0; i <10; i ++) {System.out.println (this.getName ()+""+i); intente {thread.sleep (5); } catch (InterruptedException e) {E.PrintStackTrace (); }}}}Método 2: implementar la interfaz ejecutable
El código también es muy simple
Implementar el método run ().
Aquí primero dejamos que el hilo salga el nombre de la subproceso + inicio.
Luego, emite el nombre del subproceso + un número incremental cada 5 ms.
/*** Creado por holten.gao el 2016/10/17. */public class runnablethread implements runnable {@Override public void run () {System.out.println (Thread.CurrentThread (). GetName ()+"Inicio!"); for (int i = 0; i <10; i ++) {System.out.println (Thread.CurrentThread (). GetName ()+""+I); intente {thread.sleep (5); } catch (InterruptedException e) {E.PrintStackTrace (); }}}}Resultados de las pruebas
Código de prueba
/*** Creado por holten.gao el 2016/10/17. */public class Main {public static void main (string [] args) {Thread Threadthread = new Threadthread ("Threadthread"); Threadthread.Start (); Thread runnablethread = new Thread (new Runnablethread (), "runnablethread"); runnablethread.start (); }}Resultados de las pruebas
threadThread start!threadThreadThread 0runnableThread start!runnableThread 0threadThread 1runnableThread 1threadThread 2runnableThread 2threadThread 3runnableThread 3threadThread 4runnableThread 4threadThread 5runnableThread 5threadThread 6runnableThread 6threadThread 7runnableThread 7threadThread 8runnablethread 9
Comparación de los dos métodos
1. Porque Java solo admite herencia única, utilizando el método que no se puede heredar otras clases; mientras que la implementación de interfaces en el método dos no afectará la herencia de otras clases.
2. Método 1: Dado que hereda el hilo, puede comenzar directamente nuevo; Mientras que el método 2: debe pasar el objeto como parámetro en el objeto de subproceso para obtener el objeto de subproceso.
3. En el método uno, puede obtener directamente el nombre del hilo a través de este.getName; mientras que en el método dos, debe obtener el hilo.currentThread (). getName ().
Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.