It is a very good book for you to review the concepts of OOP. Sometimes, you may confuse some basics of OOP, eventhought you may have several years of OOP experiences. If you are used to copy and paste the source code, you may luckly do a working program without OO concepts. But, a working program may not be a good program. A good OO program can save your time during program debug or upgrade.
For those with oo programming experience, I recommend to read Chapter 8 and 9 to master your basics OOP concepts.
In chapter 8, it explans the concepts of Objects and Classes. It said a class serves as the blueprint for a new type of object, a class can be asked to construct many objects or a object is a instance of a class which are asked to construct it. A class also define the object state (data) and behavior. In OOP, state and behavior are grouped into objects that communicate with each other. Keywords "new" and "this", constructor concepts are also discussed. Of course, the important concept of oop, encapsulation, is tought with keyword "private".
In chapter 9, it teaches you the concepts of Inheritance and Interface.
Inheritance allows the creation of a parent-child relationship between two types, we use the keyword "extends" to achieve it. Then, we know that treating objects of different type interchangeably is called polymorphism. Keyword "super" and the concepts of overriding a method are introduced. Inheritance provides a "is-a" relationship between two classes. If these two classes are not highly related, we can use a "has-a" relationship between them where one object contains the other as a field.
Interface helps us achieve polymorphism so that we can treat several different classes the same way, keywords "interface" and "implements" are used for this propose. A class can implements a interface only if it promise to implement all the methods of this interface. An abstract class is used as a super-class, it is used to define abstract method for its sub-class use, the keyword "abstract" is used for this propose.
After the end of each chapter, there are many self-check Problems(with answer), exercises and Programming projects....Continua