Cześć
Przerobiłem temat polimorfizmu i czytam właśnie o wątkach. Mam takie dwa przykłady z książki:
Pierwszy przykład:
public class Watki2 implements Runnable
{
public static void main(String[] args)
{
Watki2 w2 = new Watki2();
Thread t2 = new Thread(w2);
t2.start();
System.out.println("Watek1");
}
public void run()
{
System.out.println("Watek2");
}
}
Tutaj dzięki mechanizmowi polimorfizmu mogę tą linijkę Watki2 w2 = new Watki2();
zapisać w taki sposób Runnable w2 = new Watki2();
i też będzie to poprawne?
Drugi przykład:
public class Watki implements Runnable
{
public void run()
{
doDziela();
}
public void doDziela()
{
System.out.println("2 wątek");
}
}
public class Watki3
{
public static void main(String[] args)
{
Runnable r3 = new Watki();
Thread t3 = new Thread(r3);
t3.start();
}
}
Tutaj dzięki temu, że klasa Watki
implementuje interfejs Runnable
mogę analogicznie zapisać Watki r3 = new Watki();
i też będzie to poprawne?
Chodzi mi o to czy z jakiegoś konkretnego powodu zastosowano w przykładzie drugim polimorfizm? Czy są to tylko przykłady gdzie użyto dwóch różnych sposobów?