skip to main content

Object-oriented Programming : Exception objects

Exception objects
Exception objects are used similarly to predefined exception conditions. They provide, however, more flexibility and allow access to a wider variety of information for resolving exception situations, compared to the predefined or user-defined exception conditions, especially when used in object oriented applications.
Although in principle any object of any class could serve as an exception object, there will more likely be a specific class for a specific kind of exception. This allows the application to invoke a method tailored for handling that exception.
There might be, for example, a class called INVALID-ACCOUNT, whose objects correspond to individual occurrences of the invalid account condition. The application can create and "raise" such an object when the application detects a transaction with an invalid account number. Let's assume the object reference pointing to this object is called AN-INVALID-ACCOUNT. As soon as the application method (assuming it is a method rather than a program) detects the error, it can execute a RAISE AN-INVALID-ACCOUNT statement.
Note that the RAISE AN-INVALID-ACCOUNT returns the exception to the invoking runtime element only if this use of the class INVALID-ACCOUNT has been "announced" by listing that class (or a superclass of it) in the procedure division header of the method containing the RAISE statement.
Similarly, an interface-name rather than a class-name may be specified in the procedure division header of a source element containing a RAISE statement. In this case, the object being raised shall be described with an IMPLEMENTS clause that references the specified interface in order to qualify for propagation.

Copyright (c) 2017 Veryant
Contact us
Please share your comments on this manual or on any
Veryant product documentation with the email button at the top left