1、捕获异常
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.
2、抛出异常
report DEMO_RAISE_EXCEPTIONS line-size 100.
data OREF type ref to CX_ROOT.
data TEXT type STRING.
try.
try.
raise exception type CX_DEMO_CONSTRUCTOR
exporting MY_TEXT = SY-REPID.
catch CX_DEMO_CONSTRUCTOR into OREF.
TEXT = OREF->GET_TEXT( ).
write / TEXT.
raise exception OREF.
endtry.
catch CX_DEMO_CONSTRUCTOR into OREF.
TEXT = OREF->GET_TEXT( ).
write / TEXT.
endtry.
3、声明方法抛出的异常
class A_CLASS definition.
public section.
methods FOO importing P type STRING
raising CX_DEMO_CONSTRUCTOR CX_DEMO_ABS_TOO_LARGE.
endclass.
4、定义异常类
class CX_LOCAL_EXCEPTION definition
inheriting from CX_STATIC_CHECK.
endclass.
start-of-selection.
try.
raise exception type CX_LOCAL_EXCEPTION.
catch CX_LOCAL_EXCEPTION.
message 'Local Exception!' type 'I'.
endtry.
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.
2、抛出异常
report DEMO_RAISE_EXCEPTIONS line-size 100.
data OREF type ref to CX_ROOT.
data TEXT type STRING.
try.
try.
raise exception type CX_DEMO_CONSTRUCTOR
exporting MY_TEXT = SY-REPID.
catch CX_DEMO_CONSTRUCTOR into OREF.
TEXT = OREF->GET_TEXT( ).
write / TEXT.
raise exception OREF.
endtry.
catch CX_DEMO_CONSTRUCTOR into OREF.
TEXT = OREF->GET_TEXT( ).
write / TEXT.
endtry.
3、声明方法抛出的异常
class A_CLASS definition.
public section.
methods FOO importing P type STRING
raising CX_DEMO_CONSTRUCTOR CX_DEMO_ABS_TOO_LARGE.
endclass.
4、定义异常类
class CX_LOCAL_EXCEPTION definition
inheriting from CX_STATIC_CHECK.
endclass.
start-of-selection.
try.
raise exception type CX_LOCAL_EXCEPTION.
catch CX_LOCAL_EXCEPTION.
message 'Local Exception!' type 'I'.
endtry.
本文详细介绍了ABAP中异常处理的基本概念与应用方法,包括如何捕获和抛出异常、声明方法抛出的异常以及定义自定义异常类等内容。
853

被折叠的 条评论
为什么被折叠?



