class Funcionario{
private String nome;
String departamento;
private double salario;
Data dataCadastroBanco;
String rg;
//public Funcionario(){
// }
public Funcionario(String nome){
this.nome = nome;
}
void recebeAumento(double aumento){
this.salario += aumento;
}
double calculoGanhoAnual (){
//double ganho = this.salario * 12;
//this.salario = ganho;
return this.salario * 12;
}
void mostra(){
System.out.println("nome: " +this.nome);
System.out.println("departamento: "+this.departamento);
System.out.println("salario: "+this.salario);
System.out.println("rg: "+this.rg);
System.out.println("dataCadastroBanco: "+this.dataCadastroBanco.getformatada());
}
public void setSalario(double novosalario){
this.salario = novosalario;
}
public void setNome(String novoNome){
this.nome = novoNome;
}
/*
public Data getDataEntrada(){
return this.dataEntrada;
}
public Data setDataEntrada(Data data
}
*/
}
class Data{
int dia;
int mes;
int ano;
void preencheData (int dia, int mes, int ano){
this.dia = dia;
this.mes = mes;
this.ano = ano;
}
String getformatada(){
return this.dia +"/"+this.mes+"/"+this.ano;
}
}
class Empresa{
String nome;
String cnpj;
/*private*/ Funcionario [] empregados;
int livre =0;
//public Empresa (Funcionario[] empregados){
//}
//novo metodo
void adicionar(Funcionario f){
this.empregados[this.livre] = f;
this.livre++;
}
void MostrEmpregados(){
for (int i =0 ;i<this.empregados.length ;i++ ) {
System.out.println("Funcionario na posicao: "+i);
}
}
void mostraTodasAsInformacoes(){
for (int i=0; i < this.livre; i++){
System.out.println("Funcionario na posicao: "+ i);
this.empregados[i].mostra();
}
}
boolean contem(Funcionario f){
for (int i=0; i<this.livre ;i++ ) {
if (f==this.empregados[i]){
return true;
}
}
return false;
}
// public Funcionario getFuncionario (int posicao){
// return this.empregados[posicao];
// }
}
class TestaEmpresa{
public static void main(String[] args){
Empresa empresa = new Empresa();
empresa.empregados = new Funcionario[10];
Funcionario f1 = new Funcionario("Reginaldo");
/*
f1.dataCadastroBanco.preencheData (1,1,1);
*/
f1.dataCadastroBanco = new Data();
f1.dataCadastroBanco.preencheData (1,1,1);
f1.setSalario(1700);
//f1.setNome ( "reginaldo");
f1.departamento = "TI";
f1.rg = "1231585";
empresa.adicionar(f1);
empresa.empregados[0].mostra();
empresa.MostrEmpregados();
//empresa.mostraTodasAsInformacoes();
empresa.contem(f1);
}
}
/*
class novoFuncionario{
public static void main(String[] args){
Funcionario contratado1 = new Funcionario();
contratado1.nome = "Reginaldo";
contratado1.departamento = "TI";
contratado1.getSalario ();
contratado1.rg = "1213412";
contratado1.dataCadastroBanco = new Data();
contratado1.dataCadastroBanco.preencheData (12,12,12);
contratado1.mostra();
contratado1.recebeAumento(1000);
System.out.println("Seu salario com aumento ficou : "+contratado1.getSalario());
//contratado.calculoGanhoAnual();
System.out.println("Seu ganho anueal e de : "+contratado1.calculoGanhoAnual());
Funcionario contratado2 = new Funcionario();
contratado2.nome = "maria";
contratado2.getSalario ();
/*Funcionario contratado3 = new Funcionario();
/*contratado3.nome = "maria";
contratado3.salario = 2000;
*//*
Funcionario contratado3 = contratado2;
contratado3.mostra();
//Sempre teremos como retorno, false. Pois cada um é um objeto a parte e por isso, um diferente do outro.
if (contratado2 == contratado3){
System.out.println("iguais");
}else{
System.out.println("diferentes");
}
}
}*/
NÃO ESTOU SABENDO COMO PASSAR O TAMANHO DO ARRAY COMO PARAMETRO. ONDE DEVO MUDAR E COMO ??