Java throwable不会编译

Java throwable不会编译,java,Java,首先,我必须说,我读了以下内容: 我在尝试编译时遇到的错误如下: TestException.java:14:错误:不兼容的类型 静态无效doRisky(字符串测试)抛出ScaryException ^ 必需:可丢弃 发现:ScaryException java:19:错误:不兼容的类型 抛出新的ScaryException(); ^ 必需:可丢弃 发现:ScaryException java:34:错误:不兼容的类型 捕获(ScaryException se) ^ 必需:可丢弃 发现:Scar

首先,我必须说,我读了以下内容:

我在尝试编译时遇到的错误如下:

TestException.java:14:错误:不兼容的类型
静态无效doRisky(字符串测试)抛出ScaryException
^
必需:可丢弃
发现:ScaryException
java:19:错误:不兼容的类型
抛出新的ScaryException();
^
必需:可丢弃
发现:ScaryException
java:34:错误:不兼容的类型
捕获(ScaryException se)
^
必需:可丢弃
发现:ScaryException
3个错误
我假设错误消息给了我某种类型的提示,但我不知道它是什么

import java.lang.*;
/** add this as to get it to compile */
class ScaryException extends Exception
{
/** how come I can't put code here? */
}

public class  TestException {

    static void doRisky(String test) throws ScaryException{
        System.out.println ("start risky");    
        if ("yes".equals(test)) {
            throw new ScaryException();
        }
        System.out.println("end risky");
    }

    public static void main(String [] args){
        String test = "no";
        try{
            System.out.println("start try");
            doRisky(test);
            doRisky("yes");
            System.out.println("end try");
        }
        catch ( ScaryException  se){
            System.out.println("Got What " + se);
        }
        finally{
            System. out. println( "finally") ;
        }

        System.out.println("end of main");
    }
}

Java异常必须扩展
Throwable
(可以直接扩展,也可以通过扩展
Exception
或其子类间接扩展)。显然,您的
ScaryException
类没有扩展。

Java异常必须扩展
Throwable
(可以直接扩展,也可以通过扩展
Exception
或其子类间接扩展)。显然,您的
ScaryException
类没有。

要编译此文件,
ScaryException
必须是扩展了
可丢弃的
或其子类之一的类。
ScaryException
根本不存在,或者它不扩展任何
Throwable
的子类。

要编译此文件,
ScaryException
必须是扩展
Throwable
的类或其子类之一。
ScaryException
根本不存在,或者它不扩展任何
Throwable
的子类。

您的
ScaryException
是否扩展了Throwable的子类?通常是
java.lang.Exception
?您的
ScaryException
是否扩展了throwable的子类?通常是
java.lang.Exception
?最简单的方法是在
ScaryException
的定义中添加“extends Exception”,如
class ScaryException extends Exception
。当然,假设您没有用它做一些古怪的事情,比如重新发明异常处理最简单的方法是在
ScaryException
的定义中添加“extends Exception”,就像
class ScaryException extends Exception
一样。当然,假设您没有用它做一些古怪的事情,比如重新发明异常处理