Object Rexx includes features typical of an object-oriented language--features like subclassing, polymorphism, and data encapsulation. Object Rexx is an extension of the traditional Rexx language, which has been expanded to include classes, objects, and methods. These extensions do not replace traditional Rexx functions, or preclude the development or running of traditional Rexx programs. You can program as before, program with objects, or mix objects with regular Rexx instructions. The Rexx programming concepts that support the object-oriented features are described in this chapter.
Object-oriented programming is a way to write computer programs by focusing not on the instructions and operations a program uses to manipulate data, but on the data itself. First, the program simulates, or models, objects in the physical world as closely as possible. Then the objects interact with each other to produce the desired result.
Real-world objects, such as a company's employees, money in a bank account, or a report, are stored as data so the computer can act upon it. For example, when you print a report, print is the action and report is the object acted upon. Often several actions apply; you could also send or erase the report.