Dzień dobry,
mam odrobinę dziwne pytanie, na które nie za bardzo byłem w stanie znaleźć odpowiedź. Czy poprawne będzie wykorzystanie interfejsu w taki sposób, że przygotowuję w nim deklarację metody o określonej zwrotce oraz z jednym parametrem, a potem w klasach implementujących ten interfejs stworzenie metod, które będą przyjmowały różne typy danych? Jeżeli niepoprawne, to w jaki sposób zrobić to zgodnie ze sztuką?
Taki przykład, o co mi chodzi:
interface Foo
{
public function convert($data): ReturnModel;
}
class A implements Foo
{
public function convert($json): ReturnModel
{
// obrabiamy jsona
return new ReturnModel();
}
class B implements Foo
{
public function convert($model): ReturnModel
{
// obrabiamy sobie dane na podstawie modelu
return new ReturnModel();
}
}