J'espère que cela vous aidera un peu à comprendre ce que j'ai appris dans oops (core java) pendant mes études.
Implements désigne la définition d'une implémentation pour les méthodes d'une interface. Cependant, les interfaces n'ont pas d'implémentation, donc ce n'est pas possible. Une interface peut toutefois étendre une autre interface, ce qui signifie qu'elle peut ajouter des méthodes supplémentaires et hériter de son type.
Voici un exemple ci-dessous, c'est ma compréhension et ce que j'ai appris dans oops.
interface ParentInterface{
void myMethod();
}
interface SubInterface extends ParentInterface{
void anotherMethod();
}
et gardez une chose à l'esprit : une interface ne peut qu'étendre une autre interface et si vous voulez définir sa fonction sur une classe, alors seule une interface peut être implémentée, par exemple ci-dessous.
public interface Dog
{
public boolean Barks();
public boolean isGoldenRetriever();
}
Maintenant, si une classe devait implémenter cette interface, voici à quoi elle ressemblerait :
public class SomeClass implements Dog
{
public boolean Barks{
// method definition here
}
public boolean isGoldenRetriever{
// method definition here
}
}
et si une classe abstraite a quelques fonctions abstraites définies et déclarées et que vous voulez définir ces fonctions ou vous pouvez dire implémenter ces fonctions alors vous devez étendre cette classe parce que la classe abstraite peut seulement être étendue. voici l'exemple ci-dessous.
public abstract class MyAbstractClass {
public abstract void abstractMethod();
}
Voici un exemple de sous-classe de MyAbstractClass :
public class MySubClass extends MyAbstractClass {
public void abstractMethod() {
System.out.println("My method implementation");
}
}