草庐IT

Try-Catch-Continue

全部标签

java - 在 Java 中捕获 Scala 中抛出的异常 - 无法访问的 catch block

斯卡拉doesn'thave检查异常。但是,当从java调用scala代码时,最好捕获scala抛出的异常。斯卡拉:deff()={//dosomethingthatthrowsSomeException}Java:try{f()}catch(SomeExceptione){}javac不喜欢这样,并提示“这个异常永远不会从try语句体中抛出”有没有办法让scala声明它抛出一个已检查的异常? 最佳答案 使用throws注解:@throws(classOf[SomeException])deff()={//dosomethingth

java - catch语句的顺序?

在try-catch语法中,FileNotFoundException和IOExceptipon的catch语句的顺序有什么关系?写了吗? 最佳答案 是的,应该先写具体的异常,再写更广泛的,这就像你先在房间里叫所有的动物,然后再试着看看外面是否有人例如try{//dosomething}catch(Exceptionex){}catch(NullPointerExceptionnpe){}会给你编译时错误 关于java-catch语句的顺序?,我们在StackOverflow上找到一个类

java - try、catch 和 finally 的确切执行顺序是什么?

在这段java代码中,importjava.io.IOException;publicclassCopy{publicstaticvoidmain(String[]args){if(args.length!=2){System.err.println("usage:javaCopysrcFiledstFile");return;}intfileHandleSrc=0;intfileHandleDst=1;try{fileHandleSrc=open(args[0]);fileHandleDst=create(args[1]);copy(fileHandleSrc,fileHandleD

java - java try-with-resource无法与scala一起使用

在Scala应用程序中,尝试使用javaniotry-with-resource构造从文件读取行。Scala版本2.11.8Java版本1.8try(Streamstream=Files.lines(Paths.get("somefile.txt"))){stream.forEach(System.out::println);//willdobusinessprocesshere}catch(IOExceptione){e.printStackTrace();//willhandlefailurecasehere}但是编译器会抛出类似◾未找到:值(value)流try没有成功的尝试或最

c# - 为什么在 OOP(例如 Java、C#)中使用 break/continue 标签是一种不好的做法?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。有人告诉我,在OOP语言中使用break和continue标签不是OOP编程风格。您能详细解释一下原因和问题所在吗?诀窍在于这个标签词。我的意思是标记为break/continue。classBreakWithLabelDemo{publicstaticvoidmain(String[]args){int[][]arrayOfInts={{32,87,3

c# - 同时使用 catch 和 finally 的 try-catch-finally 的用例

我了解try-catch的工作原理和try-finally的工作原理,但我发现自己(通常)在两种完全不同的场景中使用它们:try-finally(或C#和VB中的using)主要用于一些中等大小的代码块,这些代码块使用了一些需要正确处理的资源。try-catch最常用的是围绕可能以非常特定的方式失败的单个语句或(作为包罗万象)在应用程序的非常高的级别,通常在某些用户界面操作的正下方。根据我的经验,try-catch-finally是合适的情况,即我想要捕获某些特定异常的block正是我在其中使用一些一次性资源的同一block非常罕见。然而,C#的语言设计者,VB和Java似乎认为这是一

java - JDK 的 try-with-resources 示例中的错误做法?

这个问题在这里已经有了答案:Correctidiomformanagingmultiplechainedresourcesintry-with-resourcesblock?(8个答案)关闭5年前。我在try-with-resources中找到了这个例子Java文档:staticStringreadFirstLineFromFile(Stringpath)throwsIOException{try(BufferedReaderbr=newBufferedReader(newFileReader(path))){returnbr.readLine();}}如果BufferedReader

java - 在 Java 6 中模拟 try-with-resources 的最佳方法是什么?

事实证明,几乎没有人正确关闭Java中的资源。程序员要么不用try-finally完全阻止,或者只输入resource.close()在finally这也是不正确的(因为Throwable来自close()可以隐藏来自tryblock的Throwable)。有时他们会放类似IOUtils.closeQuietly()的东西with仅适用于InputStream,但不适用于OutputStream.try-with-resources解决了所有这些问题,但仍有大量项目使用Java6编写。模拟try-with-resources的最佳方式是什么?在Java6中?现在我使用GuavaClos

Java Try 和 Catch IOException 必须被捕获或声明被抛出

我正在尝试使用我在thispage底部找到的一些代码.这是我为其创建的类中的代码:importjava.io.LineNumberReader;importjava.io.FileReader;importjava.io.IOException;publicclassLineCounter{publicstaticintcountLines(Stringfilename)throwsIOException{LineNumberReaderreader=newLineNumberReader(newFileReader(filename));intcnt=0;StringlineRead

java - 为什么 multi-catch RuntimeException 可以编译,而 multi-catch Exception 不编译?

在此示例中,第二个catchblock无法访问,因此我的代码无法编译。但是,如果我使LimpException扩展RuntimeException而不是Exception,它可以毫无问题地编译。为什么?publicclassFinals{publicvoidrun(){try{spit();}catch(HurtExceptione){System.out.println("");}catch(LimpExceptionex){//doesnotcompile,unreachablecodeSystem.out.println("");}}publicvoidspit()throwsH