이 기사는 주로 Java의 마지막과 반환 사이의 관계를 연구합니다. 특정 소개 및 예제는 다음과 같습니다.
1. Try Block에는 System.Exit (0)와 같은 문이 있습니다. Java Virtual Machine JVM을 종료하기 때문에 JVM조차 중지되고 모든 끝이 끝납니다. 물론 마지막으로 진술은 실행되지 않습니다.
2. 다른 경우에는 마지막으로 진술이 필연적으로 실행됩니다. 따라서 일부 리소스 릴리스 작업은 여기에서 수행 할 수 있습니다.
(1) 반환은 마침내 시도/캐치의 반환을 무시합니다.
(2) 마지막으로 리턴 명령문을 작성할 때 경고가있을 것입니다. 함수가 예외를 던지지 않고 정상적으로 반환하지 않기 때문입니다.
package com.demo.test; public class finallandreturn {private static void finallandrityreturn () {try {system.out.println ( "system. 마지막으로 ");}} private static void finallandcatchreturn () {try {system.out.println ("thnateAndCatchReturn-> try "); 새 예외 ();} catch (예외 e) {system.out.println ( "athindAndAndln -> catch"); return;} 마침내 {system.out.println ( "shindingandcatchreturn-> lasth");}} // 반환이 돌아 오기 전에 최종 문장이 실행됩니다. private static string tryreturn () {string str = "초기화"; try {system.out.println ( "tryeturn-> try"); str = "try ="try "; return str;} catch (예외 e) {system.out.println ("tryreturn-> catch ");"catch "; {str =}; null;} private static string tryreturnandfinallyreturn () {string str = "초기화"; try {system.out.println ( "tryreturnAndfinallyReturn-> try"); str = "try"; return str;} catch (예외 e) {system.out.println ( "tryreturnallyRethreturn-> catch"; {System.out.println ( "tryreturnandfinallyReturn-> mindl");/ * * 경고 : 마지막으로 블록이 정상적으로 완료되지 않습니다. */str = "mindr"; return str;}} 개인 정적 문자열 trythrowandfinallyReturn ()은 예외 {string str = "초기화"; try {system.out.println ( "trythrowandfinallyReturn-> try"); str = "try new Exception (); = "catch"; new Exception ();} 마침내 {system.out.println ( "trythrowandfinallyReturn-> 최종");/ * * 경고 : 마지막 블록이 정상적으로 완료되지 않습니다 * 마지막 블록이 반환 문을 포함하는 경우, 이전 캐치 블록이 예외를 다시 던지더라도, 메소드를 호출하는 경우, 메소드가 캐치 블록에 의해 예외를 얻지 못하지만 예외는 예외를 얻지 못할 것입니다. */str = "lasth"; return str;}} private static void and andruntimeexception () {try {system.out.println ( "thnateAndRuntImeexception-> try"); 새로운 runtimeexception () catch (예외 e) {system.out.println ( "shindingandruntimeexception-> catch");} 마침내 {system.out.println ( "lasthindruntimeexception-> marning");}} private static void and finitalandexit () {system.out.println; ");"); "); System.exit (0); Java Virtual Machine JVM을 종료합니다. JVM조차 멈추고 모든 것이 완료되었습니다. 물론 마지막으로 진술은 실행되지 않습니다. system.exit (0);} catch (예외 e) {system.out.println ( "lasthindexit -> catch");} 최종 {system.out.println ( "finallandexit -> masting");}} public static void main (string [] args) {argss) {args] {args) {argss); 최종적으로 and andcatchreturn (); system.out.println (); System.out.println ( "tryeturn return->" + tryereturn ()); System.out.println (); System.out.println ( "tryreturnandFinallyReturn return->" + tryreturnAndfinallyReturn ()); System.out.out.println (); {system.out.println ( "trythrowandfinallyReturn return->" + trythrowandfinallyReturn ());} catch (예외 e) {e.printstacktrace ();} system.out.println (); 최종적으로 andruntimeexception (); System.out.println (); 최종 및데모 결과 :
위는이 기사의 전체 내용입니다. 모든 사람에게 도움이되기를 바랍니다. 관심있는 친구는이 사이트의 다른 관련 주제를 계속 참조 할 수 있습니다. 단점이 있으면 메시지를 남겨 두십시오. 이 사이트를 지원해 주신 친구들에게 감사드립니다!