草庐IT

exceptionally

全部标签

Java SneakyThrow of exceptions,类型删除

谁能解释一下这段代码?publicclassSneakyThrow{publicstaticvoidsneakyThrow(Throwableex){SneakyThrow.sneakyThrowInner(ex);}privatestaticTsneakyThrowInner(Throwableex)throwsT{throw(T)ex;}publicstaticvoidmain(String[]args){SneakyThrow.sneakyThrow(newException());}}这可能看起来很奇怪,但这不会产生强制转换异常,并且允许抛出已检查的异常而无需在签名中声明它,或

java - Exceptions 有多昂贵

这个问题在这里已经有了答案:WhataretheeffectsofexceptionsonperformanceinJava?(18个回答)关闭9年前。你知道在java中抛出和处理异常是多么昂贵吗?我们就团队中异常的实际成本进行了多次讨论。有些人尽可能地避免它们,有些人说使用异常对性能的损失被高估了。今天我在我们的软件中发现了如下一段代码:privatevoiddoSomething(){try{doSomethingElse();}catch(DidNotWorkExceptione){log("AMessage");}goOn();}privatevoiddoSomethingEl

java - 打印异常与 Exception.getMessage

关于异常使用以下两段代码是否有最佳实践。//code1}catch(SomeExceptione){logger.error("Noinstanceavailable!",e.getMessage());}//code2}catch(SomeExceptione){logger.error("Noinstanceavailable!",e);}什么时候应该使用异常的getMessage方法? 最佳答案 第一个无法编译,因为方法error接受String作为第一个参数,接受Throwable作为第二个参数。e.getMessage()

java - throws x extends Exception 方法签名

阅读Optional的JavaDoc,我碰到了一个奇怪的方法签名;我这辈子都没见过:publicTorElseThrow(SupplierexceptionSupplier)throwsXextendsThrowable乍一看,我想知道通用异常甚至是可能的,因为你不能这样做(here和here)。再想一想,这开始有意义了,因为这里只是为了绑定(bind)Supplier...但在泛型之前,供应商本身就知道它应该是什么类型。但第二行打动了我:throwsX是一个完整的通用异常类型。然后:XextendsThrowable,this到底是什么意思?X已绑定(bind)在方法签名中。这会以任

java - keytool 错误 : java. lang.Exception : Keystore file exists, 但为空

我是SSL新手。我正在尝试使用keytool为SSL连接创建keystore。首先我尝试了以下命令[aniket@localhostbin]$keytool-genkey-aliasmyKeyStore-keyalgRSA-keystore/home/aniket/keystore它询问我密码和其他详细信息,最后给了我以下错误keytoolerror:java.io.FileNotFoundException:/home/aniket/keystore(Isadirectory)所以我在keystore文件夹中创建了一个文件keystoreFile.txt并执行了[aniket@loc

java - Jersey NoClassDefFoundError : org/objectweb/asm/ClassVisitor exception

我第一次尝试使用jersey的WebService。下面的代码是我从一些博客中得到的。当我使用jersey客户端尝试JavaWeb服务时,出现以下500错误javax.servlet.ServletException:Servlet.init()forservletJerseyRootRESTServicethrewexceptionorg.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)org.apache.catalina.valves.ErrorReportValv

java - 使用 Apache POI 读取 xlsx 文件时出现异常(org.apache.poi.openxml4j.exception - 无内容类型 [M1.13])?

我正在使用ApachePOI(XSSFAPI)读取xlsx文件。当我尝试读取文件时,出现以下错误:org.apache.poi.POIXMLException:org.apache.poi.openxml4j.exceptions.InvalidFormatException:Packageshouldcontainacontenttypepart[M1.13]代码:publicclassReadXLSX{privateStringfilepath;privateXSSFWorkbookworkbook;privatestaticLoggerlogger=null;privateInp

java - 错误消息 "unreported exception java.io.IOException; must be caught or declared to be thrown"

这个问题在这里已经有了答案:Whatdoes"error:unreportedexception;mustbecaughtordeclaredtobethrown"meanandhowdoIfixit?(1个回答)关闭5个月前。错误:filecontent.java:15:unreportedexceptionjava.io.IOException;mustbecaughtordeclaredtobethrownshowfile();^filecontent.java:78:unreportedexceptionjava.io.IOException;mustbecaughtordec

java - 与 Java 中的 Exception 与 Throwable 相关的开销

我知道thrownewException();有相当大的开销,因为它会创建一个完整的stackTrace等。有没有thrownewThrowable();出现同样的问题?这种行为是继承的,还是抛出Throwable的开销更小(没有)?编辑从分析员的角度来看,用户输入错误的密码是程序正常执行顺序的一个异常(exception)。所以如果我有:publicSessionnewSession(){validate_user_and_password();}从分析师的角度来看,抛出UserNotValidException听起来是正确的。如果您的代码具有非常好的抽象,则返回null或0听起来不

抛出异常时的 Java 最佳实践 : throwing core Java exceptions

而不是抛出newException("Somemessage",maybeSomeCause),这意味着我的方法的所有调用者都需要捕获异常(可以包括RuntimeExceptions),我想抛出发生问题时更具体的异常类型。我可以创建自己的异常类型来扩展Exception或其他异常类型,但我很好奇重用核心Java语言附带的一些异常是否是个好主意,例如:IllegalArgumentExceptionUnsupportedOperationExceptionIO异常其他?还有其他我想念的吗?我在这里找到了“核心”异常(exception)的基本列表:http://rymden.nu/exc