Class : Abstract Definition of something that has (attributes and Actions – AA)
- attributes (variables, properties or state)
- actions (methods)
Object : A specific instance of a class.
4 Concepts
Encapsulation: is Hiding Data
- by declaring the attributes (variables) private and
- using accessors (getters) and mutators (setters) methods to access them.
- both getters and setters are public.
Abstraction :
“An abstraction denotes the essential characteristics of an object that distinguish it from all other kinds of object and thus provide crisply defined conceptual boundaries, relative to the perspective of the viewer.” — G. Booch,
- providing only essential information to the outside world and hiding their background details
Inheritance :
Polymorphism :
Polymorphism means one name, many forms. Polymorphism manifests itself by having multiple methods all with the same name, but slighty different functionality
Serialization
“serializable” means converting an instance of a class (an object) into a format where it can be written to disk, or transmitted over a network.
“Deserialization” is the opposite – reading data from the disk to create an object.
In Java it is an interface that if implemented in a class, means that it can automatically be serialized and deserialized by the different serializers.