草庐IT

Try-Catch-Finally

全部标签

try-catch的使用以及细节

文章目录try-catch的使用以及细节1.基本语法2.注意细节快捷键try-catch的使用以及细节🎈Java中提供try和catch块来处理异常。try块用于包含可能出错的代码。catch块用于处理try块中发生的异常。可以根据需要在程序中有多个try…catch块。1.基本语法try{//可疑代码//将异常生成对象的异常对象传递给catch块}catch(异常){//对异常进行处理}finally{}//可以没有finally2.注意细节如果异常发生了,则异常发生后面的代码不会执行,直接进入到catch块如果异常没有发生,则顺序执行try的代码块,不会进入到catch如果希望发不发生异常

使用新版burp时出现A JNI error has occurred, please check your installation and try again

使用新版burp时出现AJNIerrorhasoccurred,pleasecheckyourinstallationandtryagain在bp路径下按住shift点击鼠标右键打开powershell然后输入命令java-jarburpsuite_pro_v2021.5.1.jar出现如下报错信息Error:AJNIerrorhasoccurred,pleasecheckyourinstallationandtryagainExceptioninthread“main”java.lang.UnsupportedClassVersionError:burp/StartBurphasbeenco

使用新版burp时出现A JNI error has occurred, please check your installation and try again

使用新版burp时出现AJNIerrorhasoccurred,pleasecheckyourinstallationandtryagain在bp路径下按住shift点击鼠标右键打开powershell然后输入命令java-jarburpsuite_pro_v2021.5.1.jar出现如下报错信息Error:AJNIerrorhasoccurred,pleasecheckyourinstallationandtryagainExceptioninthread“main”java.lang.UnsupportedClassVersionError:burp/StartBurphasbeenco

sonar代码扫描bug:Use try-with-resources or close this "FileInputStream" in a "finally" clause.

  下面代码/***读取文件到byte数组**@paramtradeFile*@return*/publicstaticbyte[]file2byte(FiletradeFile){try{FileInputStreamfis=newFileInputStream(tradeFile);ByteArrayOutputStreambos=newByteArrayOutputStream();byte[]b=newbyte[1024];intn;while((n=fis.read(b))!=-1){bos.write(b,0,n);}fis.close();bos.close();byte[]bu

sonar代码扫描bug:Use try-with-resources or close this "FileInputStream" in a "finally" clause.

  下面代码/***读取文件到byte数组**@paramtradeFile*@return*/publicstaticbyte[]file2byte(FiletradeFile){try{FileInputStreamfis=newFileInputStream(tradeFile);ByteArrayOutputStreambos=newByteArrayOutputStream();byte[]b=newbyte[1024];intn;while((n=fis.read(b))!=-1){bos.write(b,0,n);}fis.close();bos.close();byte[]bu

【Java】先return还是先finally

之前调试只发现有的方法执行完return语句后再执行finally,但是没有细究最近debug代码的时候发现,不同返回类型的方法,return和finally执行顺序竟然不一样先看返回类型为void的执行顺序:  继续执行:  继续:  发现执行顺序是:try中代码->finally代码->try中的return,是先执行finally,再执行return再看返回类型为int类型的执行顺序:  继续执行:  发现竟然直接到了return,继续:  开始执行finally,执行顺序为:try中代码->try中return->finally,而且此方法返回值依然为1,x=100会执行,但不会返回原

【Java】先return还是先finally

之前调试只发现有的方法执行完return语句后再执行finally,但是没有细究最近debug代码的时候发现,不同返回类型的方法,return和finally执行顺序竟然不一样先看返回类型为void的执行顺序:  继续执行:  继续:  发现执行顺序是:try中代码->finally代码->try中的return,是先执行finally,再执行return再看返回类型为int类型的执行顺序:  继续执行:  发现竟然直接到了return,继续:  开始执行finally,执行顺序为:try中代码->try中return->finally,而且此方法返回值依然为1,x=100会执行,但不会返回原

Nginx使用try_files返回500错误的解决方案

  记录(shui)一下自己在建站过程中踩的一个坑,也给大家一个参考:  有一天在自己的博客随便乱点的时候,突然冒出来一个500InternalServerError.我寻思这可是静态博客,怎么可能出现500错误呢?想起前几天改过Nginx的配置,于是赶紧去查对应的文件.  将网站的配置回滚之后,再次访问网址出现404错误:所以去翻了一下web目录,发现由于刚建站没多久,对应的文件确实没来得及写(lll¬ω¬)  此时问题就变成了哪个修改导致404错误变成了500错误?  继续排查上次对配置文件的修改,注意到了这个更改:当时为了把博客文章的.html后缀省略(强迫症看着实在难受>﹏<),使用了

Nginx使用try_files返回500错误的解决方案

  记录(shui)一下自己在建站过程中踩的一个坑,也给大家一个参考:  有一天在自己的博客随便乱点的时候,突然冒出来一个500InternalServerError.我寻思这可是静态博客,怎么可能出现500错误呢?想起前几天改过Nginx的配置,于是赶紧去查对应的文件.  将网站的配置回滚之后,再次访问网址出现404错误:所以去翻了一下web目录,发现由于刚建站没多久,对应的文件确实没来得及写(lll¬ω¬)  此时问题就变成了哪个修改导致404错误变成了500错误?  继续排查上次对配置文件的修改,注意到了这个更改:当时为了把博客文章的.html后缀省略(强迫症看着实在难受>﹏<),使用了

支付宝二面:使用 try-catch 捕获异常会影响性能吗?大部分人都会答错!

一.JVM异常处理逻辑Java程序中显式抛出异常由athrow指令支持,除了通过throw主动抛出异常外,JVM规范中还规定了许多运行时异常会在检测到异常状况时自动抛出(效果等同athrow),例如除数为0时就会自动抛出异常,以及大名鼎鼎的NullPointerException。还需要注意的是,JVM中异常处理的catch语句不再由字节码指令来实现(很早之前通过jsr和ret指令来完成,它们在很早之前的版本里就被舍弃了),现在的JVM通过异常表(Exceptiontable方法体中能找到其内容)来完成catch语句;很多人说trycatch影响性能可能就是因为认识还停留于上古时代。1、我们编