Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

[Dúvida] Criar um Construtor

Porque eu não consigo criar um construtor Gerente() e colocar com característica o setNome, setCpf ? como eu faria isso ?

3 respostas
solução!

Olá Lucas, tudo bem? Você não pode colocar métodos "set" como características de um construtor porque os construtores são usados para criar e inicializar objetos com valores específicos, enquanto os métodos "set" são usados para alterar valores já existentes. Se você quiser criar um construtor para a classe "Gerente" e inicializá-lo com nome e CPF, você pode fazê-lo da seguinte maneira:

class Gerente {
  private String nome;
  private String cpf;

  public Gerente(String nome, String cpf) {
    this.nome = nome;
    this.cpf = cpf;
  }

  public void setNome(String nome) {
    this.nome = nome;
  }

  public void setCpf(String cpf) {
    this.cpf = cpf;
  }

  public String getNome() {
    return nome;
  }

  public String getCpf() {
    return cpf;
  }
}
Gerente gerente = new Gerente("João Silva", "123.456.789-10");

Otávio muito obrigado, teria que criar o atributo nome e cpf, deu uma grande ajuda, fico assistindo e praticando o conteúdo e tento buscar maneira de agilizar o processo. vlw

@Lucas de Brito. Na verdade é possível "sim" colocar no Contrutor da Classe os métodos set's Nome e Cpf, particularmente quando é feito podemos tratar os dados antes incluir no Contrutor, observe como ficou o meu setNome().

public class Gerente {

    private String nome;
    private String cpf;

    public Gerente(String nome, String cpf) {
        this.setNome(nome);
        this.setCpf(cpf);
    }

    public String getNome() {
        return nome;
    }
    public void setNome(String name) {
        this.nome = name.toUpperCase();
    }
    public String getCpf() {
        return cpf;
    }
    public void setCpf(String cpf) {
        this.cpf = cpf;
    }

}
public class Program {

    public static void main(String[] args) {

        Gerente g = new Gerente("Leonardo", "999.999.999-99");

        System.out.println(g.getNome());
        System.out.println(g.getCpf());

    }

}