Re[2]: Является ли ковариантность необходимой в ООП?
От: Аноним  
Дата: 20.12.13 12:37
Оценка:
Здравствуйте, nikov, Вы писали:

N>Что значит "особенно в генериках"?


Ковариантность в генериках, например, List<Cat> это подтип List<Animal> (если Cat это подтип Animal), по сравнению с ковариантностью без генериков, как в типе возвращаемого значения переопределенным в наследуемом классе методом:

http://en.wikipedia.org/wiki/Covariant_return_type

 // Classes used as return types:
 
 class A {
 }
 
 class B extends A {
 }
 
 // "Class B is more narrow than class A"
 // Classes demonstrating method overriding:
 
 class C {
     A getFoo() {
         return new A();
     }
 }
 
 class D extends C {
     @Override
     B getFoo() {
         return new B();
     }
 }
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.