Java의 제네릭 클래스에 문제가있어서 해결 방법을 모르겠습니다. 며칠 전에 자바와 제네릭으로 프로그래밍을 시작 했으므로 아주 잘 알려진 문제 일 수 있습니다. 내 클래스 정의는 다음과 같습니다.일반에서 정적 메서드 호출
public Class LocalAuthCommand<T extends LocalAuth> {
public LocalAuthCommand() {
...
}
public String execute() throws CustomException {
String result = super.execute();
T obj = T.unMarshall(result);
}
}
unMarshall은 LocalAuth의 모든 하위 클래스에 구현되는 정적 메서드입니다. 모든 T 클래스는이 메소드를 구현하지만, unMarshall이 T에서 정적 메소드로 존재한다는 것을 Java에 알리는 방법을 모른다. 어떤 아이디어로 이것을 해결할 수 있을까?
감사합니다.
정적 메서드에는 인스턴스가 필요하지 않습니다. –
메서드가 정적이 아닌 것이 좋습니다. –
코드는 기본적으로 일부 XML 문자열 (결과)을 사용하여 T 객체를 생성합니다. XML 문자열 unMarshalling 코드는 T 클래스의 정적 메서드입니다. XML을 사용하여 객체를 작성하기 때문에 정적이어야합니다. 따라서 인스턴스를 사용하지 않아도 메소드를 호출하는 데 사용할 수 있습니다. – AndoverDev