try구문의 사용법과 기능좀 부탁드립니다
혼자공부하다보니 try구문이 나오더라구요 f1눌러보니 여러블럭이 있을때 스트럭쳐를 제어해주는거같은데
영어실력도 많이 부족하고 정확히 몰라서요
예제로 밑에꺼 해석좀 부탁드릴께요 너무기본적인거를 여쭤봐서 죄송합니다
try.
if ABS( NUMBER ) > 100.
raise exception type CX_DEMO_ABS_TOO_LARGE.
endif.
try.
RESULT = 1 / NUMBER.
write: / 'Result of division:', RESULT.
RESULT = SQRT( NUMBER ).
write: / 'Result of square root:', RESULT.
catch CX_SY_ZERODIVIDE into OREF.
TEXT = OREF->GET_TEXT( ).
cleanup.
clear RESULT.
endtry.
catch CX_SY_ARITHMETIC_ERROR into OREF.
TEXT = OREF->GET_TEXT( ).
catch CX_ROOT into OREF.
TEXT = OREF->GET_TEXT( ).
endtry.
try구문은 throw가 될때 블럭을 종료하고요.
catch 블럭으로 제어가 이동합니다.
에러가 발생하였을때 예외를 발생시키고
try 블럭안에것은 사용할 수 없게 되고요
예외를 처리하는 동안 try블럭 안에서 예외를 발생시킬 수 있는 것의
참조를 막아주는 기능을 합니다.
저도 try 구문은 거의 안써서 설명 드리기가 모호하네요.
도움을 못드려서 죄송합니다. 고생하세요 ^^