This is the third edition of the popular computer science textbook Java Methods. The book offers a thorough introduction to the concepts and practices of object-oriented programming in Java. It also introduces the most common data structures and related algorithms and their implementations in the Java collections framework.
Chapters 1-14 follow the syllabus of the AP Computer Science course. They will prepare you well for the AP CS exam. Chapters 15-18 on file input and output, graphics, graphical user interfaces, and events handling in Java will give you a better sense of real-world Java programming; this material also makes case studies, labs, and exercises more fun. Chapters 19-26 deal with more advanced data structures and algorithms. Chapter 27, Design Patterns, discusses more intricate aspects of object-oriented design and serves as an introduction to design patterns, and Chapter 28, Computing in Context, addresses the issues of creative, responsible, and ethical computer use.
The book follows four main threads: Java syntax and style, OOP concepts and techniques, algorithms, and Java libraries. As in the software engineering profession itself, these threads are interwoven into an inseparable braid.
Working through this book will not make you a Java expert right away, but it will bring you to the level of an entry-level Java programmer with a better than average understanding of the fundamental concepts.
Maria Litvin has taught computer science and mathematics at Phillips Academy in Andover, Massachusetts, since 1987. She is an Advanced Placement Computer Science exam reader and Table Leader and, as a consultant for The College Board, provides AP training for high school computer science teachers. Maria has received the 1999 Siemens Award for Advanced Placement for Mathematics, Science, and Technology for New England and the 2003 RadioShack National Teacher Award. Prior to joining Phillips Academy, Maria taught computer science at Boston University.
Maria is co author of C++ for You++: An Introduction to Programming and Computer Science (1998), which became one of the leading high school textbooks for AP Computer Science courses, and of the earlier editions of the Java Methods books. Maria is also the co-author of Be Prepared for the AP Computer Science Exam in Java (since 1999) and Mathematics for the Digital Age and Programming in Python (Skylight Publishing, 2010). Since 2014, as a Code.org "affiliate," Maria has trained dozens of New England elementary school teachers in teaching elements of computer science to children in grades K-5.
Gary Litvin has worked in many areas of software development including artificial intelligence, pattern recognition, computer graphics, and neural networks. As founder of Skylight Software, Inc., he developed SKYLIGHTS/GX, one of the first GUI prototyping and development tools for C and C++ programmers. Gary led in the development of several state-of-the-art software products including interactive touch screen development tools, OCR and handwritten character recognition systems, and credit card fraud detection software. He is the co-author of C++ for You++, the Java Methods series, Be Prepared for the AP Computer Science Exam in Java, and Mathematics for the Digital Age and Programming in Python.