나는 스칼라에서 일반적인 자바 인터페이스를 구현하려고한다. 나는 보았다 : How do I extend Java interface containing generic methods in Scala? 그리고 Scala: Overriding Generic Java Methods II스칼라 : 자바 인터페이스의 메소드를 오버라이드
그래도 나는 대답을 찾을 수 없었다.
@throws(classOf[IOException])
@throws(classOf[HttpMessageNotReadableException])
override def read[T](clazz : Class[_ <: T], inputMessage : HttpInputMessage) : T ={
}
하지만이 방법은 아무 것도 무시하지 않다는 오류를 얻을 :
T read(Class<? extends T> clazz, HttpInputMessage inputMessage)
throws IOException, HttpMessageNotReadableException;
나는 스칼라에 다음과 같은 시도 : 다음은 Spring 웹에서 메소드 서명입니다. 내가 수행하여 유형을 지우면 :
override def read(clazz : Class[_], inputMessage : HttpInputMessage) : AnyRef ={
그것은 덮어 쓰는 등의 방법을 표시합니다. 내 질문은 여기에 형식 안전성을 유지하고 인터페이스 메서드를 재정의 할 수있는 방법입니다.
감사
편집
스프링 인터페이스 : 자바는 인터페이스를 parameterilized,하지만 스칼라 당신이 방법을 매개 변수화 시도에서
public interface HttpMessageConverter<T> {
T read(Class<? extends T> clazz,
HttpInputMessage inputMessage)
throws IOException,
HttpMessageNotReadableException
}
재정의하려는 메소드가 상주하는 Spring Web의 소스 코드에 대한 링크를 제공 할 수 있습니까? – pedrofurla