package atividade2;
public class Funcionario {
private String nome;
private double salarioMensal;
private String departamento;
private int codIndentificacao;
private String funcao;
public void setNome(String nome) {
this.nome = nome;
}
public void setSalarioMensal(double salarioMensal) {
if (salarioMensal < 0.0) {
this.salarioMensal = 0.0;
} else {
this.salarioMensal = salarioMensal;
}
}
public void setDepartamento(String departamento) {
this.departamento = departamento;
}
public void setCodIndentificacao(int codIndentificacao) {
this.codIndentificacao = codIndentificacao;
}
public void setFuncao(String funcao) {
this.funcao = funcao;
}
@Override
public String toString() {
return "Funcionario: nome: " + nome + " Salario Mensal " + salarioMensal + " Departamento: " + departamento
+ " codIdentificacao: " + codIndentificacao + " funcao: " + funcao;
}
}
package atividade2;
public class Gerente extends Funcionario {
private int classe;
private String setores;
public void setClasse(int classe) {
this.classe = classe;
}
public void setSetores(String setores) {
this.setores = setores;
}
public String tipoClasse() {
if (classe == 1) {
return " classe A";
}
if (classe == 2) {
return "classe B";
}
return "TI";
}
@Override
public String toString() {
return super.toString() + "Gerente: classe : " + classe + "Setor: " + setores;
}
}
package atividade2;
public class Principal {
public static void main(String[] args) {
Funcionario f1 = new Funcionario();
Funcionario f2 = new Funcionario();
f1.setNome("A");
f1.setDepartamento("Departamento A");
f1.setSalarioMensal(1200);
f1.setFuncao("Funcao A");
f1.setCodIndentificacao(123);
System.out.println("Funcionario 01-" + f1.toString());
System.out.println("********************************************************************************************************");
f2.setNome("B");
f2.setDepartamento("Departamento B");
f2.setSalarioMensal(1500);
f2.setFuncao("Funcao B");
f2.setCodIndentificacao(45);
System.out.println("Funcionario 02 " + f2.toString());
}
}
Não está validando as variáveis setores e classe no to string ? onde eu errei ai?
N
8 Respostas
O método toString() não deveria ser usado para fazer validações, ele serve somente para você fazer uma representação textual do objeto da sua classe.
N
Expressei errado, quando lá na main eu digito f2. (alguma coisa) não aparece para mim f2.setClasse
1 like
Você declarou a variável f2 como sendo do tipo Funcionario.
A classe Funcionario não possui o método setClasse.
Quem possui o método setClasse é a classe Gerente.
N
Fiz o que você falou, só que ainda não setou, e continua não chamando os atributos.
Posta o que você fez.
N
package atividade2;
public class Gerente extends Funcionario {
private int classe;
private String setores;
public void setClasse(int classe) {
this.classe = classe;
}
public void setSetores(String setores) {
this.setores = setores;
}
public String tipoClasse() {
if (classe == 1) {
return " classe A";
}
if (classe == 2) {
return "classe B";
}
return "TI";
}
@Override
public String toString() {
return super.toString() + "\nGerente: classe : " + classe + " Setor: " + setores;
}
}
identar texto pré-formatado por 4 espaços
f2.setNome("B");
f2.setDepartamento("Departamento B");
f2.setSalarioMensal(1500);
f2.setFuncao("Funcao B ");
f2.setCodIndentificacao(45);
1 like
Não importa você ter feito Gerente extender Funcionario, você tem que postar como criou o objeto f2 no método main.
N
Espera , tá certo , eu tenho que criar novo objeto para gerente.
Criado 27 de agosto de 2019
Ultima resposta 27 de ago. de 2019
Respostas 8
Participantes 3