草庐IT

try-except-else

全部标签

java - 在 Java 中,为什么 Exception 类需要在类加载器需要之前可用?

我正在开发一个动态加载JAR的应用程序,其中包含它使用的一堆类的定义。一切顺利,直到我trycatch动态加载的JAR中的异常派生类。以下片段显示了问题(DynamicJarLoader是实际加载JAR的类;TestClass和MyException都在外部JAR中):publicstaticvoidmain(String[]args){DynamicJarLoader.loadFile("../DynamicTestJar.jar");try{Stringfoo=newTestClass().testMethod("42");}catch(MyExceptione){}}当我尝试运行

java - 构造默认构造函数时无法处理异常: type Exception thrown by implicit super constructor

在我尝试将代码变成可构造的类之前,代码工作正常。当我试图从它构造一个对象时,我得到了错误"DefaultconstructorcannothandleexceptiontypeIOExceptionthrownbyimplicitsuperconstructor.Mustdefineanexplicitconstructor"这是当必须向FileReader和BufferedReader抛出异常时。谢谢编辑:FileReadertextFilethree=newFileReader(xFile);BufferedReaderbufferedTextthree=newBufferedRe

java - 如何将字符串转换为 float 并避免在 java 中使用 try/catch?

在某些情况下,我需要将字符串转换为float或其他一些数字数据类型,但有可能得到一些不可转换的值,例如“-”或“/”,我无法验证所有值事先删除它们。我想避免在这件事上使用try/catch,有没有其他方法可以在java中进行正确的转换?类似于C#TryParse的东西? 最佳答案 我能想到的最简单的事情是java.util.Scanner。然而,这种方法需要为每个字符串创建一个新的Scanner实例。Stringdata=...;Scannern=newScanner(data);if(n.hasNextInt()){//check

java - 没有 else 语句的 if 语句不好吗?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭8年前。Improvethisquestion我只是想知道在java中使用没有else语句的if(){}结构是不是一件坏事。

selenium4.17.2 报错Exception managing chrome: error sending request for url

今天下载selenium遇到了一连串的问题。。。我先按照这个博主的步骤排除一下我遇到的问题selenium4.15.2报错Exceptionmanagingchrome:errorsendingrequestforurl和打开Chrome浏览器自动退出问题-CSDN博客可以打开谷歌了,但是一直闪退啊啊啊啊一直报错Exceptionmanagingchrome:errorsendingrequestforurl(https://chromedriver.storage.googleapis.com/index.html)最后在interpreter中,附上阿里云镜像的网址,才得以解决这个问题。最

java - 我们能否在发生异常的try block 中获取LineNumber和ColumnNumber

我有以下代码,可以打印发生错误的全类名、类名、方法名。此外,我能够打印行号,但打印的行号是初始化变量“LineNumber”的行。如何在发生错误的tryblock中打印准确的LineNumber和ColumnNumber?try{SQLQuery}catch(Exceptione){StringfullClassName=Thread.currentThread().getStackTrace()[1].getClassName();StringclassName=fullClassName.substring(fullClassName.lastIndexOf(".")+1);Str

java - Java 1.6 中的 Try-with-resources 等价物

我有以下代码:publicclassMain{publicstaticvoidmain(String[]args)throwsSQLException{try(Connectionconn=DBUtil.getConnection(DBType.HSQLDB);Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);ResultSetrs=stmt.executeQuery("SELECT*FROMtours");){DBUtil.getConnec

Java 7 -> Java 8 : AES Causes exception: "BadPaddingException: Given final block not properly padded" in conjunction with BufferedReader & ZipStreams

我们使用以下语句实例化密码:Ciphercipher=Cipher.getInstance("AES");SecretKeySpeckey=newSecretKeySpec(cipherKey,"AES");这在Java7(1.7_45)中有效,但在Java8(1.8_25)中不再有效。我们将cipher传递给CipherInputStream并使用流来读取/写入数据。实际异常发生在close期间。编辑:快速查看JDK代码会发现BadPaddingException被重新抛出,在7中它被忽略了:JDK7:CipherInputStream.close:try{this.cipher.d

java - Logback SMTPAppender 在特定时间只发送一封电子邮件,但有所有异常(exception)情况

有没有办法在LogBack中配置SMTPAppender以满足以下条件?将所有异常分组到一条消息中仅在发生异常时发送每日日志报告仅在一天中的特定时间发送一次报告,将其分组在一封电子邮件中。我当前的实现远未实现上述功能,但目前它会在发生异常时发送3封电子邮件-异常消息、堆栈跟踪和缓冲区刷新。11000%d{HH:mm:ss.SSS}%-55(%X{user}%level[%thread]%logger{20})-%msg%nSERVERPORTfalseSENDERRECIPIENTSUBJECT%d{HH:mm:ss.SSS}%-55(%X{user}%level[%thread]%l

java try catch 异常后还会继续执行吗

1、有try-catch语句块,并且throw在catch语句块里,那么try语句块中引发异常(报错)的那一行代码的后续代码都不执行并且catch语句块后的代码也都不执行(遇到finally除外)。(见情形一和情形二)2、有try-catch语句块,并且throw在try语句块里,那么try语句块中引发异常(报错)的那一行代码的后续代码都不执行,但是catch语句块后的代码会继续执行。(见情形三)3、有try-catch语句块,但是没有throw语句,那么try语句块中引发异常(报错)的那一行代码的后续代码都不执行,但是catch语句块后的代码会继续执行。(见情形四)4、有try-catch语