에 정의 된 체크 예외를 던졌습니다. public List<Entity> getEntities()
메서드가있는 DataStore
인터페이스가 있다고 가정 해보십시오. SqlDataStore
클래스는이 인터페이스를 구현합니다. 문제는 SqlDataStore.getEntities()
을 호출 할 때 SQLException
이 던져 질 수 있다는 것입니다. 데이터를 가져 오기 위해 XML 파일에 액세스하는 구현 XmlDataStore
을 작성할 수 있기 때문에 메소드 서명에이 확인 예외를 추가하기 위해 인터페이스를 변경할 수 없습니다. 구현에서 throw 할 수있는 확인 된 예외를 처리하려면 어떻게해야합니까?오버라이드 메소드가 인터페이스
0
A
답변
0
좋아요, 여기 제가 더 나은 아이디어가 부족한 부분이 있습니다. 나는 RuntimeException
을 확장 한 클래스 DataStoreException
을 정의했다. 인터페이스 정의에서 throws 절을 제거했습니다. DataStore
을 구현 한 클래스 중 하나에서 확인 된 예외가 throw 될 때이를 catch하고 DataStoreException
에 랩핑하고 다시 throw합니다.
관련 문제
- 1. onKeyDown 메소드가 android에서 오버라이드
- 2. 오버라이드 문제 : 오버라이드 할 Object에 메소드가 있습니까?
- 3. Java 오버라이드 된 메소드가 호출되지 않음
- 4. 자바 오버라이드 추상 인터페이스 메서드
- 5. 정적 메소드가 오버라이드 될 수 있습니까?
- 6. Javascript - 객체 내부에서 메소드가 아닌 메소드를 오버라이드
- 7. 오버라이드 된 메소드가 아닌 액티비티의 클래스를 생성하십시오.
- 8. 인터페이스 구현의 객체 메소드가 호출됩니다.
- 9. Mef를 사용하여 플러그인 오버라이드 핵심 인터페이스
- 10. 오버라이드 된 인터페이스 구현에 대한 가상 호출
- 11. 오버라이드 GAE 속성에 대한 비교 가능한 인터페이스?
- 12. 루비 믹스 오버라이드 오버라이드 방법 설명
- 13. 인터페이스 메소드가 오버로드 될 수 있습니까?
- 14. pmd 룰 오버라이드 가능한 메소드가 객체 생성 중에 호출 됨
- 15. 스프링 자바 설정 : autowiring 전에 오버라이드 된 @Bean 메소드가
- 16. 자바 추상 클래스 혼란 : 오버라이드 된 메소드가 호출되지 않음
- 17. 스레드 메소드가 실행되지 않는 것 같습니다. (run() 메소드를 오버라이드)
- 18. java.awt.Button을 오버라이드
- 19. 오이 오버라이드 오버라이드
- 20. 수퍼 클래스/인터페이스 메서드와 오버라이드 된 동일성 검사 메서드
- 21. 자바 API의 오버라이드 메소드
- 22. @Override가있는 메소드가 있는데, 인터페이스 선언을 어떻게 볼 수 있습니까?
- 23. 구체적인 클래스를 매개 변수로 참조하는 인터페이스 메소드가 결합을 유발합니까?
- 24. 인터페이스 빌더에서 UITableViewCell을 초기화 할 때 어떤 메소드가 호출됩니까?
- 25. 부모 클래스와 인터페이스 모두에 동일한 메소드로 동일한 메소드가 재정의됩니다.
- 26. 일부 인터페이스 메소드가 다른 인터페이스로 대체되는 이유는 무엇입니까?
- 27. CheckStyle의 JavaDoc 오버라이드 방법 오버라이드 방법에 대한
- 28. 오버라이드 가상 함수가 이미 오버라이드 된
- 29. 오버라이드 (override) 및 비 오버라이드 (override) 생성자
- 30. 스칼라 : 자바 인터페이스의 메소드를 오버라이드
체크되지 않은 예외로 감 쌉니다. –
네, 또는 더 나은 여전히, 당신의 인터페이스가 던져 놓을 수있는 모든 유형의 예외로 포장하십시오. –
나는 그 질문을 이해하지 못한다. 인터페이스를 변경하여 확인 된 예외를 메서드 시그니처에 추가 할 수 있습니다. 'XmlDataStore'의 메소드는 예외를 throw한다고 선언 할 필요가 없습니다. –