Criei toda a estrutura passo a passo de acordo com o curso porem não consigo printar a mostra empregados a única coisa que é imprimida são os métodos da classe principal nada relacionado a teste empresa sai
package funcionario;
public class TesteEmpresa {
public static void main(String[] args) {
Empresa empresa = new Empresa();
empresa.empregados = new Funcionario [2];
Funcionario Lucas = new Funcionario();
Lucas.anual = 12000;
Lucas.departamento = "qual quer um";
Lucas.salario = 1650.00;
Lucas.pessoa = new Pessoa();
Lucas.pessoa.nome = "Lucas Alves ";
Lucas.pessoa.rg = 5648949;
empresa.adicionar(Lucas);
Funcionario Alves = new Funcionario();
Alves.anual = 12000;
Alves.departamento = "qual quer um";
Alves.salario = 1650.00;
Alves.pessoa = new Pessoa();
Alves.pessoa.nome = "Alves Cardoso";
Alves.pessoa.rg = 5648949;
empresa.adicionar(Alves);
Funcionario Cardoso = new Funcionario();
Cardoso.anual = 12000;
Cardoso.departamento = "qual quer um";
Cardoso.salario = 1650.00;
Cardoso.pessoa = new Pessoa();
Cardoso.pessoa.nome = "Cardoso de jesus";
Cardoso.pessoa.rg = 5648949;
empresa.adicionar(Cardoso);
empresa.mostraEmpregados();
}
}
----
package funcionario;
public class Empresa {
String nome;
String cnpj;
Funcionario [] empregados; //aqui eu criei um array do tipo funcionario sem um tamanho definido
String email;
String endereço;
int livre = 0;
void adicionar (Funcionario func){
this.empregados[this.livre] = func; //o atributo empregados dessa classe e livre dessa classe
this.livre ++;
}
void mostraEmpregados (){
for(int i = 0 ; i < this.livre ; i ++){
System.out.print("Esse eh o funcionario da posicao " + i);
System.out.print(this.empregados[i].salario);
}
}
-----
package funcionario;
public class Funcionario {
String departamento;
double salario;
Data datadeentrada;
Pessoa pessoa;
double anual = 0;
void recebeaumento (double aumento){
this.salario += aumento;
}
void salarioanual (double salario){
this.anual += salario * 12;
}
void monstra (){
System.out.println("Nome "+pessoa.nome);
System.out.println("rg "+pessoa.rg);
System.out.println("Cargo "+this.departamento);
System.out.println("Salario "+this.salario);
// System.out.println(getFormatada());
System.out.println("Salario anual "+this.anual);
}
}
----
package funcionario;
public class Principal {
public static void main(String[] args) {
Funcionario Lucas = new Funcionario();
Lucas.departamento = "producao";
Lucas.salario = 1193.30;
Lucas.anual = 0;
Lucas.pessoa = new Pessoa();
Lucas.pessoa.nome = "Lucas Alves Cardoso";
Lucas.pessoa.rg = 123456789;
Lucas.datadeentrada = new Data();
Lucas.datadeentrada.datadia = 13;
Lucas.datadeentrada.datames = 05;
Lucas.datadeentrada.dataano = 1994;
System.out.println(Lucas.pessoa.nome);
Lucas.recebeaumento(100);
System.out.println(Lucas.salario);
Lucas.salarioanual(Lucas.salario);
System.out.println(Lucas.anual);
Lucas.monstra();
Funcionario Karine = new Funcionario();
Karine.departamento = "Saude";
Karine.salario = 1200.50;
Karine.anual = 0;
Karine.pessoa = new Pessoa();
Karine.pessoa.nome = "Karine Fonseca";
Karine.pessoa.rg = 987654321;
if(Lucas != Karine){
System.out.println("Não são iguais");
}else{
System.out.println("São iguais");
}
Funcionario Alex = new Funcionario ();
Alex = Lucas;
System.out.println(Alex.salario);
}
}