>  기사  >  Java  >  Java에서는 메소드의 return 문이 실행된 후 finally 블록이 실행됩니까?

Java에서는 메소드의 return 문이 실행된 후 finally 블록이 실행됩니까?

PHPz
PHPz앞으로
2023-09-17 15:05:071008검색

Java에서는 메소드의 return 문이 실행된 후 finally 블록이 실행됩니까?

예, 메소드의 return 문 이후에도 finally 블록이 실행됩니다.

Java에서는 예외 발생 여부에 관계없이 finally 블록이 실행됩니다. finally 블록에서 System.exit() 메소드를 명시적으로 호출하면 해당 메소드만 실행되지 않습니다. JVM crash, 정전, software crash 등과 같이 최종적으로 실행되지 않는 드문 상황이 있습니다. 이러한 경우를 제외하고 finally 블록은 항상 실행됩니다.

public class FinallyBlockAfterReturnTest {
   public static void main(String[] args) {
      System.out.println(<strong>count()</strong>);
   }
   public static int count() {
      try {
<strong>         return 1;
</strong>      } catch(Exception e) {
<strong>         return 2;
</strong>      } finally {
         System.out.println("Finally block will execute even after a return statement in a method");
      }
   }
}

출력

Finally block will always excute even after a return statement in a method
1

위 내용은 Java에서는 메소드의 return 문이 실행된 후 finally 블록이 실행됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제