jlleitschuh
06/26/2017, 2:09 PMinterface AnimalHolder {
Set<? extends Animal> getAnimals();
}
And in a impl I can do do:
class CatHolder implements AnimalHolder {
@Override
Set<Cat> getAnimals();
}
Where Cat implements Animal
But If I convert AnimalHolder
to kotlin:
interface AnimalHolder {
val animals : Set<out Animal>
}
I can no longer have CatHandler
have its getAnimals
method return Set<Cat>
.
What do I need to do on my interface to allow for the same behavior I can get in java?