2014-09-09 10 views
0

자바에서 예외 목록을 만들고 싶습니다. 뭔가처럼 -자바에서 예외 목록 만들기

List<Exception> ex = new ArrayList<Exception>(); 

ex.add(NotFoundException.class); 

있지만 이렇게에서 나는 오류 엉 무엇입니까 -

The method add(Exception) in the type List<Exception> is not applicable for the arguments (Class<NotFoundException>) 

이클립스 IDE는 addAll()로 변경하는 것이 좋습니다하지만 그 중 하나가 문제가 해결되지 않았다.

누군가 또는 CollectionException 개 만들 수있는 방법을 알려주세요.

+2

'.class'는 무엇이라고 생각하십니까? –

+1

예외 인스턴스 목록 또는 예외 클래스 목록을 원하십니까? – benzonico

+0

이'List'로 무엇을 할 계획입니까? –

답변

4

개체와 그 클래스의 차이점에 대해 혼란스러워합니다. 당신은 예외 목록을 갖고 싶어

List<Class<? extends Exception>> list = new ArrayList<Class<? extends Exception>>(); 
list.add(Exception.class); 

: 당신이 클래스의 목록을 원하는 경우

List<Exception> list = new ArrayList<Exception>(); 
list.add(new Exception("Help! A problem!")); 
+1

참고 두 예제는 경계 때문에 'Exception.class' /'new Exception()'을 제외하고는 실제로 작동하지 않습니다. – markspace

+0

사실, 클래스의 기능 목록에 대해 경계를 완화해야합니다. 나는 원래의 질문자가 클래스 목록이 아닌 예외 목록을 정말로 원한다는 가정하에 작업했기 때문에 경계 목록이 클래스 목록에 얼마나 제한되어 있는지 실제로 생각하지 않았습니다. – user3062946

+0

해결책 주셔서 감사합니다. 실제로 예외의 인스턴스를 추가했지만 클래스는 작동하지 않습니다. 그래서 List > list = new ArrayList >(); list.add (RuntimeException.class); didnt 일 및 동일한 과실을 보여주는. –

0

예외가 아닌 클래스를 추가하고 있습니다.

List<Class<? extends Exception>> ex = new ArrayList<>(); 

ex.add(Exception.class); 
+0

거기에 약간의 경계를주고 싶을 수도 있습니다. –

0

을 당신이해야 목록에 예외 인스턴스. 수업이 아닙니다.

예 :

List<Exception> ex = new ArrayList<Exception>(); 
ex.add(new FileNotFoundException()); 
ex.add(new MyException()); 
0

예외 목록, 즉 예외 인스턴스를 포함 할 수있는 목록을 만들었습니다. 하지만 거기에 class을 추가하려고합니다. (그렇지 않으면 적절한 생성자를 사용하여 NotFoundException가 기본 생성자가있는 경우 obvioously)

다음은

List<Exception> ex = new ArrayList<Exception>(); 
ex.add(new NotFoundException()); 

을 작동합니다.

다음도 작동합니다. List> ex = new ArrayList>(); ex.add (NotFoundException.class);

지금은 실제로 필요한 것이 무엇인가에 달려 있습니다.