For CS1 (in Java) and introductory Java programming courses offered in Computer Science, Engineering, CIS, MIS, IT and Business programs at both the undergraduate and graduate level. With a focus on object-oriented problem solving, this revision of a popular book takes an "objects early" approach to teaching Java, with the assumption that teaching beginners the "big picture" early gives them more time to master the principles of object-oriented programming. The third edition has been revised and rewritten to provide students with the most accessible presentation of cutting-edge Java topics. Its running example revisits a collection of games and puzzle examples in several chapters, and introduces students to simple object-oriented programming principles, such as inheritance, randomness, animation, threads, and networking. The CyberPet examples from previous editions continue to be available on the companion website. Chapters 0 (Computers, Objects, and Java) and 1 (Java Program Design and Development) are substantially reorganized and rewritten.
It reduces the pace with which new concepts are introduced to students, and simplifies the treatment of object-oriented (OO) and UML concepts, and moves some of the more challenging OO topics, such as polymorphism, to a new Chapter 7. Coverage of the new Java 5.0 Scanner class, introduced in Chapter 2 are used to perform simple input operations. Independent introductions to both a command-line interface and a graphical user interface (GUI) now provided in a completely rewritten Chapter 4 (Input/Output: Designing the User Interface) that enables instructors to choose the type of interface that best suits their teaching style.
Table of Contents
Preface. 0. Computers, Objects, and Java. 1. Java Program Design and Development. 2. Objects: Defining, Creating, and Using. 3. Methods: Communicating with Objects. 4. Applets: Programming for the World Wide Web. 5. Java Data and Operators. 6. Control Structures. 7. Strings and String Processing. 8. Arrays and Array Processing. 9. Graphical User Interfaces. 10. Graphics and Drawing. 11.Exceptions: When Things Go Wrong. 12. Recursive Problem Solving. 13. Threads and Concurrent Programming. 14. Files, Streams, and Input/Output Techniques. 15. Sockets and Networking. 16. Data Structures: Lists, Stacks, and Queues.
Ralph A. Morelli, is an Associate Professor and Chair of Computer Science Department at Trinity College in Hartford, Connecticut. He has written and c-authored books and articles on expert systems, artificial intelligence, the Web, and educational software. He is the membership chair of the Northeast Region of the Small College Computing Conference, as well as a member of the Association for Computing Machinery and Computer Professionals for Social Responsibility. He is a recipient of two National Science Foundation Opportunity Awards.