Ho un'interfaccia denominata abc
programma sta compilando anche senza che implementa l'interfaccia
public interface abc
{
void start();
}
e ho una classe astratta denominata def
public abstract class def extends Thread implements abc
{
}
ho creato un'altra classe che estende def
chiamato ghj
public class ghj extends def
{
//it is defing all the methods of its above abstract class
//now it does not implement the method define in interface start();
}
Si prega di avvisare se la classe ghj
non implementa l'interfaccia abc
metodi richiesti quindi come può essere compilato il programma?
+1 Dato che entrambe le definizioni sono le stesse :) –
sì e cosa succede se cambiamo il tipo di ritorno di start ma estendiamo il thread sarà l'errore di compilazione tempo – anshulkatta
@anshulkatta Se cambi il tipo di ritorno di 'start()' in l'interfaccia, il codice non verrà compilato a causa di tipi di reso incompatibili tra il contratto del metodo (fornito dall'interfaccia) e il metodo fornito (definito in Thread). – Vulcan