O construtor padrão em Java

Rashmi Patidar 12 outubro 2023
  1. o construtor padrão em Java
  2. o construtor parametrizado em Java
O construtor padrão em Java

Na linguagem Java, o termo construtor é semelhante aos métodos que executamos na programação. Existem algumas propriedades de um construtor que você deve ter em mente durante sua criação.

  1. O nome do construtor deve ser sempre igual ao nome da classe.
  2. Não deve haver nenhum tipo de retorno do construtor.
  3. Pode haver um construtor parametrizado e um construtor sem argumento (construtor padrão) em uma classe.
  4. O construtor sempre é chamado quando um objeto é instanciado.
  5. O construtor não deve prosseguir com palavras-chave como abstract, static, final e synchronized.

o construtor padrão em Java

O construtor Java padrão é freqüentemente chamado de construtor no-args. Abaixo, você pode verificar o bloco de código para entender o construtor padrão em Java.

public class Main {
  public static void main(String[] args) {
    B b = new B();
    System.out.println(b.a);
  }
}

class B {
  int a;
}

No bloco de código acima, você observará que existem duas classes; o primeiro contém o método main e o outro é escrito para representar a funcionalidade do construtor.

A função main é o ponto de entrada do programa e a execução começa aqui. Portanto, a instrução da classe do driver, new B(), chama o construtor público sem argumento da classe B. Como não havia uma definição explícita do construtor fornecido, o compilador cria um construtor padrão sozinho e o invoca na instrução acima.

O construtor inicializa as variáveis ​​da classe. Quando nenhum construtor é definido, o compilador inicializa o valor da variável com seus padrões. Quando a variável a da classe B é referenciada na função println, o valor impresso está na saída abaixo.

Produção:

0

o construtor parametrizado em Java

O uso de construtores parametrizados é para passar o número de parâmetros no momento da criação do objeto. Abaixo está o bloco de código que demonstra sua função.

public class Main {
  public static void main(String[] args) {
    A a = new A(1, "One");
    System.out.println(a.a + " " + a.b);
    //      A a1= new A();
  }
}

class A {
  int a;
  String b;

  A(int a, String b) {
    this.a = a;
    this.b = b;
  }
}

No bloco de código acima, A é uma classe para demonstrar o construtor parametrizado. E outra é a classe que contém o método main. Na função, a instrução new A(1, "One") chama internamente o construtor parametrizado da classe A. O objeto criado é atribuído à referência da classe e a definição do construtor é definida na classe.

O construtor, A(int a, String b), inicializa o valor das variáveis ​​a e b. Os valores passados ​​nos parâmetros serão copiados nas variáveis. Quando na função println, usar a variável de referência chama as variáveis ​​de classe da classe A; ele imprime o valor instanciado na saída com um espaço adicionado entre eles.

Ao lado dele, há uma declaração comentada. Nós comentamos sobre as instruções sendo executadas usando o operador //. A instrução new A() tenta internamente encontrar o construtor sem argumento da classe. Se o compilador não encontrar nenhum construtor padrão, ele pode criar um construtor padrão.

Essa capacidade fica restrita ao caso em que não há nenhum construtor explícito definido. Portanto, neste caso, o usuário deve criar o construtor no-args manualmente. O A a1= new A(); função lança um erro de tempo de compilação. As duas opções para resolver o problema são criar um construtor padrão ou alterar a assinatura do construtor parametrizado existente que leva a instrução existente a uma interrupção. Portanto, a linha é comentada.

Produção:

1 One
Rashmi Patidar avatar Rashmi Patidar avatar

Rashmi is a professional Software Developer with hands on over varied tech stack. She has been working on Java, Springboot, Microservices, Typescript, MySQL, Graphql and more. She loves to spread knowledge via her writings. She is keen taking up new things and adopt in her career.

LinkedIn

Artigo relacionado - Java Constructor