Porque eu não consigo criar um construtor Gerente() e colocar com característica o setNome, setCpf ? como eu faria isso ?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Porque eu não consigo criar um construtor Gerente() e colocar com característica o setNome, setCpf ? como eu faria isso ?
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());
}
}