List<A>
을 반환하는 메서드가있는 일반 인터페이스 (Pack<A extends PackAnimal>
)가 있습니다. 오늘은 인터페이스가 나는 클래스를 speficy하는 것을 잊지 구현하는 클래스에 (class XXX implements PackAnimal
) 반환 형식은 컴파일 시간에 확인하고 있지 않은 경우 목록을 반환하는 메서드가있는 일반 인터페이스
interface PackAnimal {
}
class Buffalo implements PackAnimal {
}
interface LonelyAnimal {
}
class Puma implements LonelyAnimal {
}
interface Pack<A extends PackAnimal> {
List<A> getMembers();
}
class PumaPack implements Pack {
@Override
public List<Puma> getMembers() {
return null;
}
}
이유는 무엇입니까 실행
중 실패한 것으로 나타났습니다? 선언문에 어떤 유형의 실수라도 컴파일이 실패하면 어떻게 강제 할 수 있습니까?
좋은데, 원시 타입을 비활성화하는 플래그가 있습니다. http://stackoverflow.com/questions/697879/javac-flag-to-disallow-raw-types – Narkha