Junior — Middle
Kako implementirati nasledjivanje opšteg tipa od interfejsa u programskom jeziku?
sobes.tech АИ
Одговор од АИ
U programskim jezicima koji podržavaju generičke tipove, kao što su Java ili Kotlin, nasleđivanje generičkog tipa od interfejsa se ostvaruje navodeći interfejs sa parametrima tipa prilikom deklaracije klase.
Primer u Javi:
interface Repository<T> {
void save(T item);
T findById(int id);
}
class UserRepository implements Repository<User> {
@Override
public void save(User user) {
// implementacija za čuvanje korisnika
}
@Override
public User findById(int id) {
// implementacija za pronalaženje korisnika
return new User();
}
}
Ovde, klasa UserRepository nasleđuje interfejs Repository sa konkretnim tipom, User.
Ako želi da i klasa bude generička, parametar tipa se prosleđuje dalje:
class GenericRepository<T> implements Repository<T> {
@Override
public void save(T item) { /* ... */ }
@Override
public T findById(int id) { /* ... */ return null; }
}
Na ovaj način, nasleđivanje generičkog tipa od interfejsa se postiže navodeći parametre tipa prilikom implementacije interfejsa.