OOP in Java with Design Patterns

by Mark Mahoney

These playbacks introduce the reader to the Java programming language. I focus on the fundamental aspects of the language, OO concepts, and design patterns. I am assuming the reader has some programming experience in a programming language like C/C++, Python, or Javascript (look at my profile page for some books on those languages). The first chapter, Basic Java, covers some of the fundamentals of the Java language. If you have some Java experience you can skip this chapter. The second chapter, Inheritance, Polymorphism, and Interfaces, cover the main tenets of an object oriented programming language. The third chapter, Design Patterns, covers nine common design patterns. A design pattern is a solution to a well known problem that can be applied in different contexts. I discuss the general problem/solution pair first and then apply each one to a specific context.