try return finally
5617 단어 자바
:try {} return , try finally {} code , , return ?
질문 보충:
~~ return ~~
(1) try 에서 이상 을 던 지고 catch 에 return 문구 가 있 습 니 다. finally 에 return 문구 가 없습니다. 자바 는 catch 에서 return 문 구 를 먼저 실행 한 다음 finally 문 구 를 실행 하고 마지막 으로 catch 에서 return 문 구 를 실행 합 니 다.상황 을 자세히 보다.
(2) try 에서 이상 을 던 지고 catch 에 return 문구 가 있 으 면 finally 에 도 return 문구 가 있 습 니 다. 자바 는 catch 에서 비 return 문 구 를 먼저 실행 한 다음 finally 에서 비 return 문 구 를 실행 하고 마지막 으로 finally 에서 return 문 구 를 실행 합 니 다. 함수 반환 값 은 finally 에서 돌아 오 는 값 입 니 다.상황 2.
(3) Throw (catch 가 무능 한 지, catch 가 아 닌 지) 뒤 에는 code 를 따라 갈 수 없습니다. 그렇지 않 으 면 컴 파일 이 통과 할 수 없습니다.아래 상황 을 자세히 보십시오. 셋, 넷, 다섯.
반환, 마지막 으로 총 결:
상황 1. 코드 는 다음 과 같 습 니 다.
public class Test {
public int testTry(){
FileInputStream fi=null;
try{
fi=new FileInputStream("");
}catch(FileNotFoundException fnfe){
System.out.println("this is FileNotFoundException");
return 1;
}catch(SecurityException se){
System.out.println("this is SecurityException");
}finally{
System.out.println("this is finally");
}
return 0;
}
public static void main(String[] args) {
Test t= new Test();
System. out .println(t.testTry());
}
}
Output :
this is FileNotFoundException
this is finally
1
상황 2. 코드 수정 은 다음 과 같다.
public class Test {
public int testTry(){
FileInputStream fi=null;
try{
fi=new FileInputStream("");
}catch(FileNotFoundException fnfe){
System.out.println("this is FileNotFoundException");
return 1;
}catch(SecurityException se){
System.out.println("this is SecurityException");
}finally{
System.out.println("this is finally");
return 3;
}
//return 0;
}
public static void main(String[] args) {
Test t= new Test();
System. out .println(t.testTry());
}
}
Output :
this is FileNotFoundException
this is finally
3
----------------------------------------------------
Return throw 요약:
상황 3:
public class Test {
public static void main(String[] args) {
Test t=new Test();
try{
System.out.println(t.testTry());
}catch(Exception e){
System.out.println("this is exception");
}
}
public int testTry()throws Exception{
FileInputStream fi=null;
try{
fi=new FileInputStream("");
}catch(FileNotFoundException fnfe){
//System.out.println("this is FileNotFoundException");
throw new Exception();
return 1;
}catch(SecurityException se){
System.out.println("this is SecurityException");
}finally{
System.out.println("this is finally");
}
return 0;
}
}
>javac Test.java
Test. java: 22: 접근 할 수 없 는 문장
Return 1;
상황 4:
public class Test {
public static void main(String[] args) {
Test t=new Test();
try{
System.out.println(t.testTry());
}catch(Exception e){
System.out.println("this is exception");
}
}
public int testTry()throws Exception{
FileInputStream fi=null;
try{
fi=new FileInputStream("");
}catch(FileNotFoundException fnfe){
//System.out.println("this is FileNotFoundException");
throw new Exception();
System.out.println("after throw exception");
//return 1;
}catch(SecurityException se){
System.out.println("this is SecurityException");
}finally{
System.out.println("this is finally");
}
return 0;
}
}
>javac Test.java
Test. java: 22: 접근 할 수 없 는 문장
System.out.println("this is SecurityException");
상황 5:
public class Test {
public static void main(String[] args) {
Test t=new Test();
try{
t.testTry();
}catch(Exception e){
System.out.println("this is exception");
}
}
public void testTry()throws Exception{
throw new Exception();
System.out.println("this is testTry method");
}
}
>javac Test.java
Test. java: 22: 접근 할 수 없 는 문장
System.out.println("this is testTry method");
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.