Im 'Exception에서 파생 된 클래스 BrokenObjectException 클래스를 작성하려고합니다.예외에서 상속받을 수 없습니다.
이직렬화 클래스 BrokenObjectException는이 필드를 선언하라고 요구하는 이유가 이해하지 않은
public class BrokenObjectException extends Exception
{
BrokenObject(String message)
{
;
}
}
긴 형태의 정적 최종 serialVersionUID의 필드를 선언하지 않습니다 는하지만 이클립스에서 나는이 오류가 발생합니다. 일부 메소드를 선언하기 위해 강제로 인터페이스하면 안됩니까? 그래서 첫 번째 catch 블록에 내가 쓴
try
{
if(...)
throw new Exception("wrong");
if(...)
throw new BrokenObjectException("wrong");
}
catch(BrokenObjectException e)
{
// do something (action1)
throw e;
}
catch(Exception e)
{
// so something (action2)
throw e;
}
"수행 어쨌든 나는 그것을 내가 모든 예외를 잡는 방법과 다른 방법 NA를 잡으려면 때문에 예로부터 내가 블록을 가지고,이 클래스를 갖고 싶어 어떤 것". 이것은 던져진 예외 유형에 따라 다른 작업을 수행하기를 원하기 때문입니다. 그래서 BrokenObjectException은 Exception에서 파생되었으므로 두 번 catch됩니다. 그러나 BrokenObjectException이 throw되면 action1과 action2를 수행하고 싶습니다. 정상적인 Exception이 throw되면 그냥 액션 2를하고 싶습니다. 가능합니까? 오류를 해결하는 방법은 무엇입니까?