如果您需要区分不同类型的异常,只需创建 2 个不同的异常,可能类似于:
public class ProduktException extends Exception
{
    public ProduktException(String msg){
    //null
    }
}
然后有:
public class ProduktNotDeletedException extends ProduktException
{
    ....
}
和
public class ProduktNotCreatedException extends ProduktException
{
    ....
}
然后你可以抓住一个或另一个,或两者兼而有之。
try {
    ...
} catch(ProduktNotDeletedException e1) {
    e1.toString();
} catch(ProduktNotCreatedException e2) {
    e2.toString();
} 
编辑:
对于一个班级,我的意思是:
public class ProduktException extends Exception {
    boolean notDeleted;
    boolean notCreated;
    public ProduktException(String msg){
        super(msg);
    }
    public boolean isNotDeleted() {
        return(notDeleted);
    }
    public boolean isNotCreated() {
        return(notCreated);
    }
    public static void throwProduktNotCreatedException() throws ProduktException {
        ProduktException e = new ProduktException("Cannot be created!");
        e.notCreated = true;
        throw e;
    }
    public static void throwProduktNotDeletedException () throws ProduktException {
        ProduktException e = new ProduktException("Cannot be deleted!");
        e.notDeleted = true;
        throw e;
    }
}
然后在您的尝试/捕获中:
try {
    ...
} catch(ProduktException e) {
    e.toString();
    if(e.isNotCreated()) {
        // do something
    }
    if(e.isNotDeleted()) {
        // do something
    }
}