As discussed in the previous chapters, while Java has primitive types, everything else is an object. While Java is not considered a pure OOP language because of its support for primitive types, it is still a serious OOP language.
To use Java effectively, you should know OOP. Don't worry if your OOP knowledge is rusty. While this chapter does not teach it, we will try to refresh your memory along the way. This chapter concentrates on all OOP-related subjects:
- Defining classes
- Defining packages
- Adding class members: variables and methods
- Constructors and deconstructors
- Inheritance
- Interfaces
- Abstract classes
- Upcasting and downcasting