Junior — Middle
Hogyan valósítható meg egy általános típus öröklése egy interfészből egy programozási nyelvben?
sobes.tech MI
Válasz az MI-től
Programozási nyelvekben, amelyek támogatják az általános típusokat (például Java vagy Kotlin), az általános típus öröklése egy interfészből úgy valósul meg, hogy a class deklarációjában megadjuk az interfészt típusparaméterrel.
Java példában:
interface Repository<T> {
void save(T item);
T findById(int id);
}
class UserRepository implements Repository<User> {
@Override
public void save(User user) {
// felhasználó mentésének megvalósítása
}
@Override
public User findById(int id) {
// felhasználó keresése
return new User();
}
}
Itt a UserRepository osztály örökli a Repository interfészt egy konkrét típus, User, megadásával.
Ha az osztálynak is általánosnak kell lennie, akkor a típusparamétert tovább lehet adni:
class GenericRepository<T> implements Repository<T> {
@Override
public void save(T item) { /* ... */ }
@Override
public T findById(int id) { /* ... */ return null; }
}
Így az általános típus öröklése az interfészből a típusparaméterek megadásával érhető el az interfész implementálásakor.