Durante a construção de um objeto de uma classe derivada, o construtor de sua superclasse é executado (implicitamente ou explicitamente) antes de executar o corpo de seu construtor.
Assim, ao se construir um objeto de uma classe derivada, o
método construtor da superclasse será inicialmente invocado. Este, por
sua vez, invocará o construtor de sua superclasse, até que o contrutor da
classe raiz de toda a hierarquia de objetos -- a classe
Object
-- seja invocado. Como Object
não tem uma
superclasse, seu construtor é executado e a execução retorna para o
construtor de sua classe derivada. Então executa-se o restante do
construtor de sua classe derivada e a execução retorna para o
construtor de sua classe derivada e assim sucessivamente, até que
finalmente o restante do construtor da classe para a qual foi solicitada a
criação de um objeto seja executada.
Construtores da superclasse podem ser explicimente invocados usando
a palavra-chave super
© Ivan Luiz Marques Ricarte
DCA/FEEC/UNICAMP