Возможный дубликат:
Как фактически используются интерфейсы Java?
Я не говорю с точки зрения академического модного слова, но с точки зрения перспективного разработчика.
Итак, возьмем пример: -
Class1 implements Interface
public String methodOne() {
return "This is Class1.methodOne()";
}
public String methodTwo() {
return "This is Class1.methodTwo()";
}
}
Class2:
Class2 implements Interface
public String methodOne() {
return "This is Class2.methodOne()";
}
public String methodTwo() {
return "This is Class2.methodTwo()";
}
}
Использование интерфейса: -
Client {
Interface intface = new Class1();
intface.methodOne();
intface.methodTwo();
Interface intface = new Class2();
intface.methodOne();
intface.methodTwo();
}
Но каковы преимущества только для написания: -
Client {
Class1 clas1 = new Class1();
clas1.methodOne();
clas1.methodTwo();
Class2 clas2 = new Class2();
clas2.methodOne();
clas2.methodTwo();
}
И вообще обходите интерфейс.
Интерфейсы просто кажутся дополнительным слоем кода для дополнительного слоя кода, или их больше для них, чем просто "Вот методы, к которым относится класс, к которому вы обращаетесь"?