Synopses & Reviews
In their introductory book, these best-selling authors provide the beginning computer science student or professional with a thorough introduction to computing with Java and Object-Oriented Programming.
Java: An Introduction to Computing teaches traditional and graphical/internet programming. This text provides a solid introduction to computer science as a discipline with an object-oriented approach to Java. The following features and benefits make this text an invaluable tool for learning Java.
FEATURES/BENEFITS:
- Provides extensive coverage of Java 2, including in the Swing components.
- Enjoy a comprehensive reference to the most current version of Java.
- Uses a "spiral" approach, with central topics introduced early and revisited in increasing detail.
- A "use it build it" approach that reduces the learning curve for students or professionals.
- Introduces Object-Centered Design (OCD), in Chapter, culminating in Object-Oriented Design in Chapter 11.
- OCD provides a gentle, consistent approach to OOD and OOP, which is becoming the industry standard.
- Covers GUI programming gradually and consistently in each chapter.
- Learn how to build programs with graphical user interfaces.
- Presents "Part of the Picture" sections, contributed by field experts, in each chapter.
- Introduces the discipline of computer science, including sections on ethics, history, artificial intelligence, and architecture.
Synopsis
"The authors did an excellent job in covering all the milestones of computer development. The authors should be commended for bringing life to an often poorly described subject."
Mike Davarpanah, California Polytechnic University, Pomona "The biggest strength of this book is a good, methodical approach to object-oriented design. The steps are well laid-out
and the examples are quite good."Brian Durney, Brigham Young University, Hawaii
Synopsis
In their introductory book, these best-selling authors provide the beginning computer science student or professional with a thorough introduction to computing with Java and Object-Oriented Programming.
Java: An Introduction to Computing teaches traditional and graphical/internet programming. This text provides a solid introduction to computer science as a discipline with an object-oriented approach to Java. The following features and benefits make this text an invaluable tool for learning Java.
FEATURES/BENEFITS:
- Provides extensive coverage of Java 2, including in the Swing components.
- Enjoy a comprehensive reference to the most current version of Java.
- Uses a "spiral" approach, with central topics introduced early and revisited in increasing detail.
- A "use it build it" approach that reduces the learning curve for students or professionals.
- Introduces Object-Centered Design (OCD), in Chapter, culminating in Object-Oriented Design in Chapter 11.
- OCD provides a gentle, consistent approach to OOD and OOP, which is becoming the industry standard.
- Covers GUI programming gradually and consistently in each chapter.
- Learn how to build programs with graphical user interfaces.
- Presents "Part of the Picture" sections, contributed by field experts, in each chapter.
- Introduces the discipline of computer science, including sections on ethics, history, artificial intelligence, and architecture.
Synopsis
This introductory book introduces key ideas behind computing with Java and object-oriented programming in an intuitive and non-intimidating way. It not only teaches text-based programming, but also graphical/internet programming. In addition, Java: An Introduction to Computing provides an introduction to computer science as a discipline. Uses a problem-solving methodology, along with a “Spiral” approach in which central topics are introduced early and are revisited in increasing detail throughout the text. Covers Java 2, the most current version of the Java programming language. Java: An Introduction to Computing is appropriate for readers looking for an introduction to Java.
About the Author
JOEL C. ADAMS received two B.S. degrees in Psychology and Computer Science in 1980 and 1984 from Geneva College. He continued his study of Computer Science at the University of Pittsburgh, where he received his M.S. in 1986 and his Ph.D. in 1988. Since 1989, Joel has taught at Calvin College, where he is a Professor of Computer Science. He has also been a visiting faculty member at North Carolina State University and a Fulbright Scholar at the University of Mauritus. He is co-author of the widely used book
C++: An Introduction to Computing.
LARRY R. NYHOFF earned his A.B. in Mathematics in 1960 from Calvin College and his M.S. in 1961 from the University of Michigan. Larry continued his study of Mathematics and received his Ph.D. in 1969 from Michigan State University. He is in his 37th year as a Professor at Calvin College and has aided in the development of the school's computer science curriculum since its inception. In addition to authoring and co-authoring over 27 textbooks used worldwide, Larry is a professional member of ACM and SIGCSE.
JEFFREY L. NYHOFF received his B.A. degree in 1985 from Calvin College. He majored in both Computer Science and Communication Arts and Sciences. He went on to earn his Master's degree in 1992 from the University of California at Berkeley. Currently, Jeff is working on his Ph.D. dissertation at the University of California Davis. He has taught Computer Science at Calvin College since 1994, where he is an Assistant Professor.
Table of Contents
(NOTE:
Each chapter begins with Chapter Objectives and ends with Chapter Summary and Programming Pointers and/or Programming Problems.)
Beginning Snapshots.
1. Problem Solving and Software Engineering.
A Brief History of OOP and Java. Introduction to Java Application Programs. Introduction to Java Applet Programs. Problem Solving through Software Engineering.
2. Some Java Fundamentals.
Example: A Payroll Program. Types, Variables, and Constants. Some Basic Program Features. Java Documentation—API. Introduction to GUIs: A GUI Greeter.
3. Types and Expressions.
Introductory Example: Einstein's Equation. Primitive Types and Reference Types. Numeric Types and Expressions. Assignment Expressions. Java's boolean Type and Expressions. Java's Character-Related Types and Expressions. Graphical/Internet Java: Einstein's Equation.
4. Methods.
Introductory Example: Old MacDonald Had a Farm… Getting Started with Methods. Example: The Volume of a Sphere. Methods: A Summary. Graphical/Internet Java: Old MacDonald…Applet.
5. Using Control Structures in Methods.
Example: An Improved Payroll Program. Methods That Use Selection. Methods That Use Repetition. Graphical/Internet Java: Old MacDonald…Applet Revisited.
6. More about Classes: Instance Methods.
Introductory Example: Modeling Temperatures. Designing a Class. Implementing Class Attributes. Implementing Class Operations. Graphical/Internet Java: Raise the Flag.
7. Selection.
Introductory Example: The Mascot Problem. Selection: The if Statement Revisited. Selection: The Switch Statement. Selection: Conditional Expressions. Graphical/Internet Java: Event-Driven Programming.
8. Repetition Structures.
Introductory Example: The Punishment of Gauss. Repetition: The For Loop Revisited. Repetition: The While Loop. Repetition: The Do Loop. Choosing the Right Loop. Introduction to Recursion. Graphical/Internet Java: A Guessing Game.
9. Arrays.
Introductory Example: Ms. White's Test Score Analyzer. Arrays. Sorting. Searching. Processing Command-Line Arguments. Multidimensional Arrays. Graphical/Internet Java: A Pie-Chart Class.
10. File I/O.
Introductory Example: Weather Data Analysis. Java's I/O System: Readers, Writers, and Streams. Exceptions. More about I/O Streams. Example: Scanning for a Virus. Example: Retrieving Student Information. Graphical/Internet Java: Student Data Retrieval GUI.
11. Inheritance and OOP.
Introductory Example: A Trip to the Aviary. Inheritance and Polymorphism. Example: Geological Classification. Example: An O-O Payroll Program. Graphical/Internet Java: A Function Plotter.
12. Data Structures.
Introductory Example: Counting Internet Addresses. The ArrayList and LinkedList Classes. Example: A Stack Application and Class. Example: Building a Queue Class. An Introduction to Trees. Graphical/Internet Java: A PolygonSketcher Class.
13. Advanced Topics.
Introductory Example Sorting a List. Topic: Multithreading. Topic: Client-Server Networking. Graphical/Internet Java: Moon Animation. The End?
Appendixes.
A: Unicode Character Set. B: Java Keywords. C: Java Operators. D: Java Packages and Classes. E: Number Systems. F: Answers to Quick Quizzes.
Index.