不能抛出 Exception 类型的异常,异常类型必须是 Throwable 的子类

VL4*_*iRG 2 java exception throwable

我在其他问题中搜索这个问题,但仍然没有弄清楚 Throwable 的确切含义。阅读了一些关于它的文章(它的超级类bla bla bla),但仍然不知道如何实现它。忘了说我是java新手。任何建议将不胜感激:D

这是异常类:

class Exception {
private int pDen;
private int pMes;
private int kDen;
private int kMes;

public Exception(int pDen, int pMes, int kDen, int kMes) {
    super();
    this.pDen = pDen;
    this.pMes = pMes;
    this.kDen = kDen;
    this.kMes = kMes;
}
public void message()
{
    System.out.println("Isklucok");
}
public void promena()
{
    int tmpDen = 0;
    int tmpMes = 0;
    tmpDen = pDen;
    pDen = kDen;
    kDen = tmpDen;
    tmpMes = pMes;
    pMes = kMes;
    kMes = tmpMes;
}
Run Code Online (Sandbox Code Playgroud)

}

这是我在其他类中运行的代码,我应该在哪里捕获抛出的异常。

try {
        if(pMes > kMes)
        {
            throw new Exception(pDen,pMes,kDen,kMes);
        }
        else if(pMes == kMes)
            if(pDen > kDen)
            {
                throw new Exception(pDen,pMes,kDen,kMes);
            }
    }
    catch(Exception e)
    {
        e.message();
        e.promena();
    }
Run Code Online (Sandbox Code Playgroud)

小智 6

让您的自定义异常从Throwable层次结构中扩展一些内容。

例如

// Exception here is java.lang.Exception, not the class from your example
public class MyException extends Exception {

    // ...

}
Run Code Online (Sandbox Code Playgroud)