boolean (PsiMethod method1, PsiMethod method2) { final PsiReferenceList list1 = method1.getThrowsList(); final PsiClassType[] exceptions1 = list1.getReferencedTypes(); final PsiReferenceList list2 = method2.getThrowsList(); final PsiClassType[] exceptions2 = list2.getReferencedTypes(); if (exceptions1.length != exceptions2.length) { return false; } final Set<PsiClassType> set1 = ContainerUtil.newHashSet(exceptions1); for (PsiClassType anException : exceptions2) { if (!set1.contains(anException)) { return false; } } return true; }