Email the Author
You can use this page to email Graham Mitchell about Learn Object-Oriented Java the Hard Way.
About the Book
“Learn Object-Oriented Java the Hard Way” focuses on the object-oriented parts of Java and covers them deeply, with plenty of complete working examples and the explanations you won’t find in other books.
You need some experience Java or a similar language before you will be able to make it through this material. If you have never programmed before in any language, you should start with my intro book “Learn Java the Hard Way”. But if you already know the basics of Java or another language like C, C++, C# or Javascript, this book is for you. And if you only know a very different language like Python or Ruby then you will have some catching up to do but will probably still be fine.
In the final chapter you’ll write a graphical version of a popular checker-dropping game and know how to package it up in a JAR file to send to others.
You will learn:
- How to install the Java compiler and a text editor
- How to work with Java objects and create your own classes
- Fields and instance variables
- Methods and Parameters
- Constructors
- Reference Variables vs Primitives
- Generics and Casting
- Inheritance
- Interfaces
- Abstract Classes and Methods
- Packages
- How to create JAR files
- Graphical User Interfaces in JavaFX
- Mouse and Keyboard Input in GUIs
- Testing and Efficiency
- Algorithmic Complexity and Big-O Notation
- ArrayLists
- Sorting
...and more!
About the Author
I have been teaching normal kids to code and nerds to be more socially savvy since 1997.
More specifically, I've been teaching Computer Science at Leander High School (near Austin, TX) since the fall of 1997. The high school I teach at is a pretty good school; consistently ranked near the top 5% of public schools nationally. I have many students who are exceptional but most of my students are regular kids with no particular aptitude for programming.
To date, I've taught over 2000 students in person the basics of coding, and hundreds more through my book(s).