를 슬로우 선언해야합니다 나는 제거 throws IOException 생성자로부터 throw됩니다. 답장을 보내 주셔서 감사합니다.보고되지 않은 IOException이이 줄에 오류가 점점 임
답변
모든 Unreported XYZException; must be declared
오류에 대한 이유는 동일합니다 : 전화를하는 방법 또는 XYZException
예외에 대한 명시 적 throw
가 직접 또는 중 하나를 통해 예외를 다룰 것입니다 주위에는 catch
블록이없는 그 슈퍼 클래스. 당신이 선언의 초기화 표현식에서 예외를 잡을 수 없어
참고 :
private SpriteSheet spriteSheet= new SpriteSheet("Sprites/player.png");
IOException
이 생성자의 맥락에서 어떻게 발생하고 어떤 try
/catch
없다 new SpriteSheet
의 호출 그것 주위.
class MyClass {
private SpriteSheet spriteSheet;
{ // Initializer block for spriteSheet
try {
spriteSheet=new SpriteSheet("Sprites/player.png");
} catch(IOException e){
e.printStackTrace();
throw new IllegalStateException("Missing a required resource", e);
}
}
... // Other declarations
}
차라리 생성자에 초기화를 넣는 것이 좋습니다. 그리고 IOException을 무시하는 대신 런타임 예외를 던질 것입니다. –
@JBNizet 스프라이트가 리소스를 제외한 다른 곳에서 온 경우이를 수행합니다. 이는 사용자가 잠재적으로 처리 할 수있는 오류를 나타냅니다. 그러나 스프라이트는 프로그램에서 컴파일 된 리소스에서 가져옵니다. 그것이 없으면, 호출자는 아무 것도 고칠 수 없습니다 : 그것은 MyClass의 빌드 문제입니다. 그래서 나는이 예외를보고하지 않았다. 어떤 것이 든, 나는 프로그램의 실행을 멈추게하는'false'를 주장 할 것이다. – dasblinkenlight
어설 션은 기본적으로 비활성화되어 있습니다. 그래서 어떤 예외가 발생하면 (예를 들어 코드가 나중에 변경 될 수 있음), 객체가 일관성이없는 상태로 남게되고 명확한 런타임 예외를 말하는 대신에 버그를 모호하게 만듭니다. 문제가 무엇인지, 그리고 IOException을 근본 원인으로 포함합니다. –
- 1. Java 오류 :보고되지 않은 예외입니까?
- 2. 보고되지 않은 예외 java.io FileNotFoundException; 잡은 또는
- 3. 보고되지 않은 예외 java.io.FileNotFoundException; 잡히거나 throw되어야한다고 선언해야합니다.
- 4. Parcelable은이기 때문에 IOException이이
- 5. 점점 오류가
- 6. 점점 오류가()
- 7. 수정 오류 :보고되지 않은 예외 InterruptedException
- 8. 보고되지 않은 예외 java.io.ioexception을 캐치하거나 선언해야 함
- 9. 보고되지 않은 예외 ActionListener에서 java.io.IOException이 발생했습니다.
- 10. 보고되지 않은 IOException? 이 코드의 문제점은 무엇입니까?
- 11. 보고되지 않은 예외 StackEmptyException; 잡히거나 throw되어야한다고 선언해야합니다.
- 12. 임 Vb.net에서 오류가 발생했습니다
- 13. openssl_pkcs7_sign() : 오류가 점점 개인 키
- 14. ACK가 점점 오류가 CodeIgniter의
- 15. 봄 점점 오류가
- 16. 점점 들러로드 오류가 자주
- 17. 스트림/forEach에서 "보고되지 않은 예외 IOException"을 처리하는 방법은 무엇입니까?
- 18. 왜 PHP에서 jquery 내 jswery에서 정의되지 않은 형식 오류가 점점?
- 19. C++ -로 정의되지 않은 참조`나는이 오류가 점점 이유를 궁금
- 20. 정의되지 않은 방법 each_pair 나는 다음과 같은 오류가 점점 오전
- 21. 보고되지 않은 예외 SQLException; 잡히거나 던져 져야 함 오류
- 22. 점점 않은 예상 된 결과는
- 23. 페이지를 만들고 오류가 점점 : (218)
- 24. 왜 내가 라인 InitializeComponent();에 오류가 점점?
- 25. 서버 자바 TCP 오류 :보고되지 않은 예외 때 java.io.IOException 여기
- 26. houghtransform 줄에 오류가 있습니다.
- 27. 임 :
- 28. 여러 줄에 정의되지 않은 오프셋
- 29. "처리되지 않은 예외 : org.json.JSONException"점점 코드 샘플을
- 30. Wallabyjs - 점점 계속 형식 오류 : '정의되지 않은'
당신의'SpriteSheet' 않습니다 그럼 무엇을 : 당신이 체크 예외를 throw 메서드 호출을 초기화 할 경우
, 당신은 중괄호로 초기화 블록을 공급하고, 거기에 초기화 코드를 넣어야 생성자는 어떻게 생겼습니까? (당신은 우리에게 스 니펫을 보여 줬지만 완전한 생성자를 보여줘야한다.) 스택 트레이스를 출력하고 아무 일도 일어나지 않은 것처럼 계속하는 것이 예외를 "처리하는"올바른 방법은 거의 없다. –
대신 IOException을 사용하십시오. 예외가 발생하면 작동합니다. – Muhammad
@Muhammad IOException을 잡는 것이 왜 IOException을 catch하지 못하고 예외를 잡을 수 없습니까? 그건 아주 나쁜 충고입니다. –