After execution of the following code, What are the declared type (static type) and the object type (dynamic type) of nCopy?
NaturalNumber n = new NaturalNumber2( ); NaturalNumber nCopy = new NaturalNumber1L(n); 1) declared type is NaturalNumber, object type is NaturalNumber1L 2) declared type is NaturalNumber, object type is NaturalNumber2 3) declared type is NaturalNumber2, object type is NaturalNumber1L 4) declared type is NaturalNumber1L, object type is NaturalNumber2