Java is an object-oriented programming language. My first book covered all the basic syntax of the Java language, but avoided all the object-oriented parts. This book covers the rest.
If you have never programmed before in any language, this book is probably not for you. You need some experience in a similar language before you will be able to make it through this book. If you already know the basics of Java or another language like C, C++, C# or Javascript, you will be okay. If you only know a very different language like Python or Ruby then you’ll have a little catching up to do.
If you get lost trying to follow the code in exercise 1, then you should probably go back and work through a simpler book before trying this one.
…and more!
In the final chapter you’ll write a graphical version of a popular checker-dropping game and be able to package that up to send to others.
All the examples in this book will work in version 1.8 of Java or any newer version. If you omit the last few chapters on JavaFX, most of the code will work in Java version 1.6 or later.
Except for the last few graphics chapters, I will also not cover anything that was only recently added to Java. This book is for learning the basics of object-oriented programming and nothing has changed about the basics of Java in many years.
I hope to write more books after this one. My third book will cover making a simple Android app, assuming you have finished working through the first two books.
Although I have provided a zipfile containing the source code for all the exercises in the book, you should type them in.
For each exercise, type in the code. Yourself, by hand. How are you going to learn otherwise? None of my former students ever became great at programming by merely reading others’ code.
Work the Study Drills. Then watch the Study Drill videos (if you have them) to compare your solutions to mine. And by the end you will be able to code, at least a little.
Some chapters of this book are made available free to read online but you are not allowed to make copies for others without permission.
The materials provided for download may not be copied, scanned, or duplicated, or posted to a publicly accessible website, in whole or in part.
Educators who purchase this book and/or tutorial videos are given permission to utilize the curriculum solely for self-study or for one-to-one, face-to-face tutoring of a single student. Large-group teaching of this curriculum requires a site license.
Unless otherwise stated, all content is copyright 2015-2016 Graham Mitchell.
“Learn Object-Oriented Java the Hard Way” is ©2015–2016 Graham Mitchell