Working with object initialization and its customization
When you ask Java to create an instance of a specific class, something happens under the hood. Java creates a new instance of the specified type, the JVM (Java Virtual Machine) allocates the necessary memory, and then executes the code specified in the constructor.
When Java executes the code within the constructor, there is already a live instance of the class. Thus, the code in the constructor has access to the fields and methods defined in the class. Obviously, we must be careful in the code we put within the constructor because we might end up generating huge delays when we create instances of the class.
Note
Constructors are extremely useful to execute setup code and properly initialize a new instance.
Let's forget about the hierarchy structure in which we were working for the classes that represent 2D shapes. Imagine that we have to code the Circle
class as a standalone class that doesn't inherit from any other class. Before we can...