Understanding object-oriented programming with Java
Author(s)
Bibliographic Information
Understanding object-oriented programming with Java
Addison-Wesley, c1998
Available at / 3 libraries
-
No Libraries matched.
- Remove all filters.
Note
Includes bibliographical references (p. 359-361) and index
Description and Table of Contents
Description
Timothy Budd, leading author, educator and researcher in the object-oriented programming community, provides a deep understanding of object-oriented programming and Java.Understanding Object-Oriented Programming with Java teaches readers why the Java language works the way it does, as opposed to many other books that focus on how Java works.Readers learn about the development decisions that went into making the Java language, and leave with a more sophisticated knowledge of Java and how it fits in the context of object-oriented programming. Throughout the text, the focus remains on teaching readers to master the necessary object-oriented programming concepts. Dr. Budd explains to the reader in clear and simple terms the fundamental principles of object-oriented programming, illustrating these principles with extensive examples from the Java standard library. In short, he thoughtfully created this book, not as a reference manual for the Java language, but as a tool for understanding Java and the object-oriented programming philosophy.Highlights: * Provides several graduated example programs in Part II (i.e., cannon and pinball games) for readers to work through and successively learn object-oriented programming features.
* Includes extensive examples from the Java standard library so that readers can better understand the many design patterns found in the AWT, the multiple purposes for which inheritance is used in the standard classes, and more. * Discusses features of Java in Part V that are important for students to understand, but not necessarily notable for their object-oriented features. Instructors have the flexibility to omit altogether, or introduce in parallel with earlier material. 0201308819B04062001
Table of Contents
(Chapters conclude with a Summary, Study Questions and Exercises.) Preface. Structure of the Book. Obtaining the Source. Acknowledgments. I. UNDERSTANDING THE OBJECT-ORIENTED WORLDVIEW. 1. Object-Oriented Thinking. A Way of Viewing the World. Computation as Simulation. Further Reading. 2. A Brief History of Object-Oriented Programming. The History of Java. Client-Side Computing. Security Issues. The White Paper Description. 3. Object-Oriented Design. Responsibility Implies Noninterference. Programming in the Small and in the Large. Why Begin with Behavior? A Case Study in RDD. CRC Cards-Recording Responsibility. Components and Behavior. Software Components. Behavior and State. Formalizing the Interface. Designing the Representation. Implementing Components. Integration of Components. Maintenance and Evolution. II. UNDERSTANDING PARADIGMS. 4. A Paradigm. Program Structure. The Connection to the Java World. Types. Access Modifiers. Lifetime Modifiers. Cross References. 5. Ball Worlds. Data Fields. Constructors. Inheritance. The Java Graphics Model. The Class Ball. Multiple Objects of the Same Class. Cross References. 6. A Cannon Game. The Simple Cannon Game. Adding User Interaction. Cross References. 7. Pinball Game Construction Kit. First Version of Game. Adding Targets: Inheritance and Interfaces. Pinball Game Construction Kit: Mouse Events Reconsidered. Cross References. III. UNDERSTANDING INHERITANCE. 8. Understanding Inheritance. An Intuitive Description of Inheritance. The Base Class Object. Subclass, Subtype, and Substitutability. Forms of Inheritance. Modifiers and Inheritance. Programming as a Multiperson Activity. The Benefits of Inheritance. The Costs of Inheritance. 9. A Case Study: Solitaire. The Class Card. The Game. Card Piles-Inheritance in Action. The Application Class. Playing the Polymorphic Game. Building a More Complete Game. 10. Mechanisms for Software Reuse. Substitutability. Composition and Inheritance Described. Composition and Inheritance Contrasted. Combining Inheritance and Composition. Novel Forms of Software Reuse. 11. Implications of Inheritance. The Polymorphic Variable. Memory Layout. Assignment. Equality Test. Garbage Collection. IV. UNDERSTANDING POLYMORPHISM. 12. Polymorphism. Varieties of Polymorphism. Polymorphic Variables. Overloading. Overriding. Abstract Methods. Pure Polymorphism. Efficiency and Polymorphism. Further Reading. 13. The AWT. The AWT Class Hierarchy. The Layout Manager. Layout Manager Types. User Interface Components. Panels. ScrollPane. Case Study: A Color Display. Dialogs. The Menu Bar. 14. Input and Output Streams. Input Streams. Output Streams. Piped Input and Output. 15. Design Patterns. Adapter. Composition. Strategy. Observer. Flyweight. Abstract Factory. Factory Method. Iterator. Decorator (Filter or Wrapper). Proxy. Bridge. Further Reading. V. UNDERSTANDING THE JAVA WORLD. 16. Exception Handling. Information Transmitted to the Catch Block. Catching Multiple Errors. Termination or Resumptive Models. Exceptions Thrown in the Standard Library. Throwing Exceptions. Passing On Exceptions. 17. Utility Classes. Point. Dimension. Date. Math. Random. Toolkit. System. Strings and Related Classes. 18. Understanding Graphics. Color. Rectangles. Fonts. Images. Animation. Graphics Contexts. A Simple Painting Program. 19. Collection Classes. Element Types and Primitive Value Wrappers. Enumerators. The Array. The Vector Collection. The Stack Collection. The BitSet Collection. The Dictionary Interface and the Hashtable Collection. Why Are There No Ordered Collections? Building Your Own Containers. 20. Multiple Threads of Execution. Creating Threads. Case Study: A Tetris Game. Cross References. 21. Applets and Web Programming. Applets and HTML. Security Issues. Applets and Applications. Obtaining Resources Using an Applet. Combining Applications and Applets. Glossary. Bibliography. Index.
by "Nielsen BookData"