问题标签 [throws]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - What's the purpose of the 'throws' statement in Java?
I'm just learning java, but it seems that in the end most of the methods in the beginning of the call stack will just have declarations 'throws Exception'. What's the good thing about this statement that I'm missing that makes it useful?
One more example. After writing some code, I decided to refactor one of my classes a bit, using classes from other java libraries; as a result, not only half of the methods of this class gained another 5 exceptions in their declarations, but about half of all my other code, too – until I decided I'd better just write 'throws exception' and don't care about. May be I just use exceptions wrong?
Important edit
My question wasn't about what that statement does – it is pretty obvious from documentation. I was actually wondering why language designers decided to make this statement necessary.
java - 调用抛出 FileNotFoundException 的方法
我很确定这是一个简单的问题,但我找不到直接的答案。如何使用 调用方法throws FileNotFoundException
?
这是我的方法:
java - 使用类从多个方法中捕获异常
在 Java 中,我有一个类,其中包含一些引发相同自定义异常的方法(自定义异常扩展了“异常”类):
我不想让用户处理这些异常,而是希望能够捕获它们并在类中处理它们。每个方法异常都将以完全相同的方式被捕获。我不想在每个方法中都放置完全相同的 try/catch 方法块。有没有办法可以在方法主体之外捕获这些异常,但在类内部?
谢谢你的时间,即使你不能帮助我。
附加更多信息:
这些方法可能会被调用直到某个点:在调用将变量“isImmutable”设置为 true 的方法之后,这些方法应该不再能够更改有关对象的任何内容。因此,如果在“isImmutable”设置为 true 之后调用这些方法之一,那么它们应该抛出一个名为“ImmutableException”的异常。对于/这个特定的实现/,我希望能够自己处理这些,而不是去代码中调用这些方法的每一个点,然后以完全相同的方式处理它们。
java - 在 java 中,我如何让一个类既实现 MouseListener 又抛出 IOException?
throws IOException 用于来自文件的输入。
java - Java:向另一个线程抛出异常
我有一个这样的java代码:
问题是我在 Run() 方法中有一个阻塞 write(),所以我添加了一个新线程来检查连接是否正在传输:如果它没有传输,我想使用异常机制(从检查器线程向另一个线程的 run() 方法抛出异常)。是否可以?
编辑[已解决]:
唯一的方法是粗暴地关闭输出流并根据写入的位数来检查连接是否正在传输:
java - 捕获块中的空指针
我正在使用 try catch 块来捕获异常。控制台显示它正在抛出一个空值。但它不会进入 catch 块。
这怎么可能处理。我也可以使用方法级别throws NullPointerException
吗?
java - 错误消息“未报告的异常 java.io.IOException;必须被捕获或声明为抛出”
错误:
filecontent.java:15:未报告的异常 java.io.IOException;必须被抓住或宣布被扔掉
显示文件();^ filecontent.java:78: 未报告的异常 java.io.IOException; 必须被抓住或宣布被扔掉
显示文件();^
我已经抛出了 java.io.IOException,但它仍然显示这些错误。
我的代码:
java - 继承、方法签名、方法覆盖和 throws 子句
我的Parent
课是:
我extend
这个类写了一个子类Child
:
请注意,在覆盖类中的getX方法时Child
,我已从throws
方法定义中删除了该子句。现在它会导致编译器出现异常行为,这是预期的:
try-catch
如预期的那样,如果不将其包含在块中,则不会编译。
编译时不将其封闭在一个try-catch
块中。
但是下面的代码行需要 try-catch 块。
正如可以预见的那样,即在运行时多态性期间使用父类引用来调用子方法,为什么 Java 的设计者在重写特定父类方法时没有强制在方法定义中包含 throws 子句?我的意思是,如果父类方法的定义中有 throws 子句,那么在覆盖它时,覆盖方法也应该包括 throws 子句,不是吗?
java - 将抛出的异常写入文件
是否可以在不使用 try catch 块的情况下将抛出的异常写入文件?
例如
还是您必须这样做: