Hilos4.java:21 -> En la línea 21 de Hilos4.java ocurre algo.
Qué ocurre?
cannot find symbol -> No puedo encontrar el símbolo -> El compilador no consigue encontrar algún símbolo (nombre de alguna cosa) que estás usando.
Qué símbolo es el que no encuentra? Dice:
symbol: constructor Thread(Hilos4) -> No encuentra un constructor de la clase Thread que reciba como parámetro un Hilos4.
¿Dónde no lo encuentra?
location: class java.lang.Thread -> Lo está buscando en la clase Thread (como es lógico)
Entonces, si lo busca ahí y no lo encuentra, ¿qué es lo que pasa?
Pues que realmente no existe un
constructor de Thread que reciba como parámetro un objeto de tipo Hilos4. Lo que existen son constructores que reciben Runnable. Aaaha! El problema es que tu clase Hilos4 no implementa el interfaz Runnable!
Y cómo lo soluciono?
Pues haz que tu clase implemente el interfaz Runnable.