An introduction to object oriented programming with Java - C.Thomas, Wu (McGraw-Hill, 2023)
There are 16 chapters in this book, numbered from 0 to 15. The first 11 chapters cover the core topics that provide the fundamentals of programming. Chapters 11 to 15 cover intermediate-level topics such as sorting, searching, recursion, inheritance, polymorphism, and file I/O. There are more than enough topics for one semester. After the first 11 chapters (Ch 0 to Ch 10), instructors can mix and match materials from Chapters 11 to 15 to suit their needs. We first show the dependency relationships among the chapters and then provide a brief summary of each chapter.