Sobes.tech
Junior — Middle

Qual é a diferença entre uma função membro de classe e um método especial de inicialização de objetos?

sobes.tech IA

Resposta da IA

Em Java, uma função membro de classe é um método normal definido dentro da classe e que pode ser chamado num objeto dessa classe. O método especial para inicializar objetos é o construtor.

Diferenças:

  • Construtor é chamado automaticamente ao criar um objeto usando new e serve para inicializar o estado do objeto.
  • O construtor não tem tipo de retorno, nem mesmo void.
  • O nome do construtor coincide com o nome da classe.
  • A função membro pode ter qualquer nome, retornar valores e ser chamada a qualquer momento após a criação do objeto.

Exemplo:

class Person {
    String name;

    // Construtor
    Person(String name) {
        this.name = name;
    }

    // Método normal
    void sayHello() {
        System.out.println("Olá, o meu nome é " + name);
    }
}

Person p = new Person("Ivan"); // chamada do construtor
p.sayHello(); // chamada do método