Foros del Web » Programación para mayores de 30 ;) » Java »

Definición de Thread, duda .

Estas en el tema de Definición de Thread, duda . en el foro de Java en Foros del Web. Buenas tardes, quería consultar respecto a los thread, no entiendo mucho en que varía hacer una clase que herede de Thread, por ejemplo : Código: ...
  #1 (permalink)  
Antiguo 07/03/2012, 13:20
 
Fecha de Ingreso: febrero-2011
Mensajes: 55
Antigüedad: 13 años, 9 meses
Puntos: 3
Definición de Thread, duda .

Buenas tardes, quería consultar respecto a los thread, no entiendo mucho en que varía hacer una clase que herede de Thread, por ejemplo :

Código:
class Tema extends Thread
{

public void run()
{
for(int i=0;i<100;i++)
{
system.out.println(i);
}
}
}
y en el main

Código:
Tema t = new Tema();

t.start();
y la diferencia con :

Código:
Tema t = new Tema();

Thread a = new Thread(t);

a.start();
Desde ya, muchas gracias !
  #2 (permalink)  
Antiguo 07/03/2012, 13:59
 
Fecha de Ingreso: enero-2008
Mensajes: 614
Antigüedad: 16 años, 10 meses
Puntos: 57
Respuesta: Definición de Thread, duda .

En realidad no tendrias que hacerlo como el segundo ejemplo que pusiste.

El primero es correcto, puedes instanciar una clase que herede de Thread y ejecutarla con start().

Pero para el segundo ejemplo, al crear un hilo, el constructor de Thread recibe un parametro Runnable

En tu caso, la clase esta heredando de Thread asi que no tiene caso que lo hagas de la segunda forma.

http://docs.oracle.com/javase/6/docs...ng/Thread.html
  #3 (permalink)  
Antiguo 07/03/2012, 18:55
zz_sioux
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Definición de Thread, duda .

como se recomienda en programación orientada a objetos y los que pregonan las buenas practicas de programación siempre es mejor extender una clase como en el primer caso, es recomendable y como un estándar, mucho mas fácil es agregarle algún método a una clase extendida al principio que tener que cambiar todo el código luego.
  #4 (permalink)  
Antiguo 09/03/2012, 11:59
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años, 6 meses
Puntos: 306
Respuesta: Definición de Thread, duda .

Cita:
Iniciado por zz_sioux Ver Mensaje
como se recomienda en programación orientada a objetos y los que pregonan las buenas practicas de programación siempre es mejor extender una clase como en el primer caso, es recomendable y como un estándar, mucho mas fácil es agregarle algún método a una clase extendida al principio que tener que cambiar todo el código luego.
Bueno, generalmente en el caso de Threads se recomienda otra cosa, generar clases que implementen Runnable e instanciar un Thread con ella.

Según mi forma de verlo, si no vas a cambiar la forma de funcionar de Thread, no lo extiendas, siguiendo el criterio de IS-A (es).

Tema no es un Thread, aunque use un Thread para ejecutarse.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.

Etiquetas: clase, definición, threads
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:03.