草庐IT

EXCEPTION

全部标签

java - 在 finally block 中设置 reference = null?

我的一位同事在finallyblock中设置了对null的引用。我认为这是无稽之谈。publicSomethinggetSomething(){JDBCConnectionjdbc=null;try{jdbc=JDBCManager.getConnection(JDBCTypes.MYSQL);...}finally{JDBCManager.free(jdbc);jdbc=null;//你怎么看? 最佳答案 你是对的,jdbc是一个局部变量,所以当getSomething()方法返回时jdbc将超出范围并符合条件垃圾收集实际上与将其

java.lang.IllegalStateException : Cannot forward after response has been committed in servlet 错误

这个问题在这里已经有了答案:java.lang.IllegalStateException:Cannot(forward|sendRedirect|createsession)afterresponsehasbeencommitted(9个回答)关闭6年前。在我的项目中,只有当用户已经登录时,我才禁止他访问每个页面。这就是为什么我写了下面的代码。当我在浏览器中输入时,例如http://localhost:8080/JSP1/Students,我来到了login.jsp页面。但是输入登录名和密码后,只有空白页http://localhost:8080/JSP1/Logged出现并且Gla

java - Selenium 网络驱动程序 : Element Not Visible Exception

这是我的代码,用于在Website上单击一个简单的登录按钮importjava.util.concurrent.TimeUnit;importorg.openqa.selenium.By;importorg.openqa.selenium.WebDriver;importorg.openqa.selenium.firefox.FirefoxDriver;publicclassReports{publicstaticvoidmain(String[]args){WebDriverdriver=newFirefoxDriver();driver.get("https://platform.

java - 需要权威来源来解释为什么你不应该抛出或捕获 java.lang.Exception

我有一个多小时后的编码标准session,我需要快速回答这个问题。经验丰富的Java程序员的常识是您不会抛出或捕获java.lang.Exception(除了极少数异常(exception)-没有双关语意)。你不这样做的原因是声明catch(java.lang.Exceptionex){...}也会捕获未经检查的异常,在大多数情况下这不是预期的。我们已经有很多由现有团队成员编写的遗留代码,他们在其中捕获java.lang.Exception的子类,记录错误,然后将子类作为java.lang.Exception重新抛出。我需要说服他们他们需要停止编写这样的代码。需要修复使用此反模式的现有

java - 在 Java 中,继续调用函数直到没有异常抛出的最佳方式是什么?

在我的Java代码中,我有一个名为getAngle()的函数,它有时会抛出一个NoAngleException。以下代码是否是编写一个不断调用getAngle()直到没有异常抛出的函数的最佳方式?publicintgetAngleBlocking(){while(true){intangle;try{angle=getAngle();returnangle;}catch(NoAngleExceptione){}}}或者重写getAngle()以在出错时返回NaN是更好的主意吗? 最佳答案 我很惊讶地阅读了这个线程的一些答案,因为这种

Java:为什么我不能在比较器中抛出异常?

直接的答案是因为Comparator.compare的接口(interface)被指定为不会抛出异常。但这是为什么呢?或者换句话说:我的Comparator必须依赖于一个可以抛出异常的函数。从理论上讲,这不应该发生。但如果发生这种情况,我希望它能从我使用Comparator的整个函数中脱离出来(在Collections.sort中)。IE。我希望它的行为就像发生了未处理的异常一样。这似乎以一种明显的自然方式是不可能的(因为如果接口(interface)说它不能抛出异常,它就不能)。我该如何解决这个问题?使用丑陋的try/catch并打印出异常并希望我能识别它?这似乎是一种非常丑陋的方式

java - 如果一个方法可以抛出多个异常,如何声明呢?

我认为throwsException只能处理一般情况。如果我的方法可以抛出多个异常,如何声明? 最佳答案 publicwriteThisToFile(Stringline)throwsFileNotFoundException,AppSpecificServiceException,SecurityException{/*something*/}另见§8.4.6MethodThrows 关于java-如果一个方法可以抛出多个异常,如何声明呢?,我们在StackOverflow上找到一个类

java - 在 Java 中,如何将 Exception 强制为 "bubble up"?

我有一个抛出异常的方法,它调用一个抛出异常的方法,等等。所以“抛出异常”的几个方法是菊花链式的。调用子方法的第一个方法将该子方法放在一个try-catchblock中,该block捕获在该调用中抛出的任何Exception。理论上。实际上,该try-catchblock不会捕获任何异常。有办法补救吗?代码如下:try{CSVSingleton.tryToReadBothFiles(FILE1_PATH,FILE2_PATH);}catch(Exceptione){//THISBLOCKNEVERGETSENTEREDBYTHEPATHOEXECUTIONSystem.out.print

java - 在 javax.swing 应用程序中捕获异常

我正在使用javax.swing制作一个应用程序,该应用程序从XML模式(使用JAXFront库)生成表单并将用户填写的数据存储到XML文档中。我在需要时放置了try-catch-finallyblock,但是当主线程结束时(AWT线程仍在运行)捕获异常时我遇到了一点问题。我有两个类完成主要工作,其他类对问题不重要:主类:它具有以下结构。初始化应用程序并运行主框架publicclassMain{publicstaticvoidmain(String[]args){readArgs();//AnINIfilewiththeappconfigModelmodel=initializeEle

java - IllegalStateException 适用于不可变对象(immutable对象)吗?

你会扔一个IllegalStateException吗?如果:由于一个或多个字段的值,方法无法完成其工作这些字段是final并且只在构造函数中赋值?教科书示例:您的类是不可变的Collection并且您的方法应该返回最大元素,但此实例为空。我已阅读KevinBourillon`sblogpost关于这个主题,我不确定适用哪条规则。UnsupportedOperationException-thismeansthatthemethodinvokedwillalwaysfailforaninstanceofthisclass(concretetype),regardlessofhowthe