The state of an object is its attributes and their values rectangle1 has attributes width and height with the values 20 and 8
object attributes are defined by the class’s instance variables. We can set the initial state of an object and its attributes via a constructor
constructors let us take actual parameters that are then copied into the constructor as local variables and then assigned to instance variables
no argument constructor creates object for a class too even if no constructor is written, and uses default values for that new object.
has a ( relationship ) = superhero HAS A power and a name each power HAS A name and a strength etc