Table Of Contents
1. Introduction. 2. Types. 2.1 Mini—language Type. 2.2 The Meaning of Type. 2.3 Primitive Types. 2.4 Composite Types. 2.5 Type Checking. Further Reading and Exercises. 3. Definition of New Types. 3.1 Mini—language Typedef. 3.2 Type Definitions. 3.3 User—defined Operators. 3.4 A Note on Pascal. Further Reading and Exercises. 4. Packages and Modules. 4.1 Mini—language Modules. 4.2 Packages and Modules. 4.3 Encapsulation and Abstraction. 4.4 Information Hiding. 4.5 Separate Compilation. 4.6 Modula—2 and Ada. Further Reading and Exercises. 5. Objects and Abstract Data Types. 5.1 Mini—language Objects. 5.2 Full Objects. 5.3 Abstract Data Types. 5.4 Turbo Pascal. Further Reading and Exercises. 6. Classes. 6.1 Mini—language Classes. 6.2 More on Objects. 6.3 Smalltalk and Eiffel. Further Reading and Exercises. 7. Inheritance. 7.1 Mini—Language Inherit. 7.2 Inheritance. 7.3 Polymorphism. 7.4 C++ and Ada 9X. Further Reading and Exercises. 8. Object-Oriented Programming. 8.1 What is an “Object”? 8.2 Variety of Objects. 8.3 Questioning Object—Oriented Programming. 8.4 Program Flash. Appendix 1: General Exercises. Appendix 2: Flash Source Code in C++. Appendix 3: Glossary. References. Index. |