Declarações de Construtor


Em Java, objetos são “construídos”. Toda vez que um objeto é criado, um construtor é invocado. Toda classe possui um construtor, mesmo que não esteja declarado explicitamente na classe, isso quer dizer que, caso não esteja, o compilador irá criar um.
Construtores parecem muito com métodos. A diferença é que construtores jamais terão um tipo de retorno.
Declarações de construtores podem, entretanto, ter qualquer tipo de modificador de acesso, e podem ter argumentos (inclusive var-args), assim como métodos.
Além disso, construtores devem ter o mesmo nome da classe na qual estão sendo declarados, não podem ser marcados como static (porque estão completamente associados à instanciação, e o modificador static não está relacionado a isso) e não podem ser marcados como final ou abstract (porque não podem ser sobrescritos).

public class Construtor {

      Construtor() { }
     
      protected Construtor(int value) { }
     
      private Construtor(String... value) { }
     
      // construtores não podem ser static
      static Construtor(String var) { }
     
      // construtores não podem ser final
      final Construtor(char var) { }
     
      /* aparenta ser um construtor, mas trata-se
       * de um método com o mesmo nome da classe */
      public void Construtor() { }
     
}


Fonte: SCJP Sun Certifi ed Programmer for Java 6 Study Guide

0 comentários:

Postar um comentário