Object-Oriented Problem Solving Java, Java, Java, 2/e

Ralph Morelli

  • 出版商: Prentice Hall
  • 出版日期: 2002-02-21
  • 售價: $2,750
  • 貴賓價: 9.8$2,695
  • 語言: 英文
  • 頁數: 862
  • 裝訂: Paperback
  • ISBN: 0130333700
  • ISBN-13: 9780130333704
  • 相關分類: Java 程式語言
  • 下單後立即進貨 (約5~7天)

買這商品的人也買了...

相關主題

商品描述

This second edition of Java, Java, Java offers a robust, accessible, and flexible problem-solving perspective. The use of Unified Modeling Language (UML) diagrams throughout the text, strongly emphasizes object-oriented design. This book assists students and professionals with their most challenging problem as beginning programmers: object abstraction, or how to use interacting objects and methods.

Using a top-down approach, the author focuses on problem decomposition and program design from the beginning. This methodology—along with its lucid and engaging exercises and analogies—sets this book apart. Morelli introduces advanced Java features including GUI's (e.g., AWT and Swing), exceptions, threads, files, and sockets. The adaptable and accessible style allows instructors to choose which advanced concepts to teach to introductory students, while intermediate-level programmers can benefit from its thorough, advanced feature coverage.

Java, Java, Java's Numerous Distinguishing Innovations:
  • Emphasizes early OO design concepts such as inheritance and information hiding.
  • Uses UML diagrams throughout to emphasize object-oriented design.
  • Features GUI elements and applets to captivate and maintain the reader's interest while introducing real-world examples.
  • Incorporates action-learning techniques such as "Hands on Learning" sections, CyberPet examples. and drop-in boxes on effective design, programming and debugging tips, and Java language rules.
  • Covers advanced features of Java: GUI's, graphics and drawing; exceptions; recursive problem solving;. threads and concurrent programming; files, streams, and input/output techniques; sockets and networking; and data structures.
  • Includes a Companion Website with extensive supplementary resources, such as a Study Guide, PowerPoint slides, and Java code www.prenhall.com/morelli

Table of Contents

Preface.
0. Computers, Objects, and Java.

Welcome. Why Study Programming? Why Java? What Is a Computer? The Internet and the World Wide Web. Programming Languages. What Is Object-Oriented Programming? Summary of UML Elements.


1. Java Program Design and Development.

Introduction. Designing Good Programs. Editing, Compiling, and Running a Java Program. Qualified Names in Java.


2. Objects: Defining, Creating, and Using.

Introduction. Class Definition. Case Study: Simulating a CyberPet.


3. Methods: Communicating with Objects.

Introduction. Passing Information to an Object. Constructor Methods. Retrieving Information from an Object. Passing a Value and Passing a Reference. Flow of Control: Selection Control Structures. The Improved CyberPet.


4. Applets: Programming for the World Wide Web.

Introduction. The Applet Class. Class Inheritance. Applet Subclasses. A Simple Applet. Event-Driven Programming. Case Study: The CyberPetApplet.


5. Java Data and Operators.

Introduction. Programming = Representation + Action. Boolean Data and Operators. The Boolean-Based CyberPet Model. Numeric Data and Operators. Case Study: Converting Fahrenheit to Celsius. An Integer-Based CyberPet Model. Character Data and Operators. Example: Character Conversions. Example: Calculating Compound Interest. Problem Solving = Representation + Action.


6. Control Structures.

Introduction. Flow of Control: Repetition Structures. Counting Loops. Example: Car Loan. Conditional Loops. Example: Computing Averages. Example: Data Validation. Case Study: Animated CyberPet. Principles of Loop Design.


7. Strings and String Processing.

Introduction. String Basics. Finding Things Within a String. Example: Keyword Search. Retrieving Parts of Strings. Example: Processing Names and Passwords. Processing Each Character in a String. Case Study: Silly CyberPet String Tricks. Comparing Strings.


8. Arrays and Array Processing.

Introduction. One-Dimensional Arrays. Simple Array Examples. Example: Testing a Die. Case Study: CyberPet Animation. Array Algorithms: Sorting. Array Algorithms: Searching. Two-Dimensional Arrays. Multidimensional Arrays. Case Study: Simulating a Card Deck.


9. Graphical User Interfaces.

Introduction. The Swing Component Set. The Java Event Model 446 Events and Listeners. Case Study: Designing a Basic GUI. Containers and Layout Managers. Checkboxes, Radio Buttons, and Borders. Menus and Scroll Panes.


10. Graphics and Drawing.

Introduction. The Drawing Surface. The Graphics Context. The Color Class. Painting and Drawing Lines and Shapes. Example: The ShapeDemo Applet. Graphing Equations. Drawing Bar Charts and Pie Charts. Handling Text in a Graphics Context. Case Study: Interactive Drawing.


11.Exceptions: When Things Go Wrong.

Introduction. Handling Exceptional Conditions. Java's Exception Hierarchy. Handling Exceptions Within a Program. Error Handling and Robust Program Design. Creating and Throwing Your Own Exceptions.


12. Recursive Problem Solving.

Introduction. Recursive Definition. Recursive String Methods. Recursive Array Processing. Example: Drawing (Recursive) Fractals.


13. Threads and Concurrent Programming.

Introduction. What Is a Thread? Thread States and Life Cycle. Using Threads to Improve Interface Responsiveness. Case Study: Cooperating Threads. Case Study: The Spider and Fly Threads.


14. Files, Streams, and Input/Output Techniques.

Introduction. Streams and Files. Case Study: Reading and Writing Text Files. The File Class. Example: Reading and Writing Binary Files. Object Serialization: Reading and Writing Objects.


15. Sockets and Networking.

Introduction. An Overview of Networks. Using Network Resources from an Applet. The Slide Show Applet. Using Network Resources from an Application. Client/Server Communication via Sockets. Case Study: Generic Client/Server Classes. Java Network Security Restrictions.


16. Data Structures: Lists, Stacks, and Queues.

Introduction. The Linked List Data Structure. The Stack ADT. The Queue ADT.


Appendix A. Coding Conventions.

Comments. Indentation and White Space. Naming Conventions. Use of Braces. File Names and Layout. Statements. Executable Statements. Preconditions and Postconditions. Sample Programs.


Appendix B. The Java Development Kit.

The Java Compiler: javac. The Java Interpreter: java. The appletviewer. The Java Archiver jar Tool. The Java Documentation Tool: javadoc.


Appendix C. The ASCII and Unicode Character Sets.
Appendix D. Java Keywords.
Appendix E. Operator Precedence Hierarchy.
Appendix F. Advanced Language Features.

Inner Classes. Nested Top-Level Versus Member Classes. Local and Anonymous Inner Classes.


Appendix G. Java and UML Resources.

Reference Books. Online References.


Subject Index.