class Funcionario {
private String nome;
private String rg;
private Data dataEntrada = new Data();
private String departamento;
private double salario;
public void recebeAumento(double aumentaValor) {
this.salario = this.salario + aumentaValor;
}
public double calcularGanhoAnual() {
return this.salario * 12;
}
public String getNome() {
return this.nome;
}
public String setNome(String nome) {
return this.nome = nome;
}
public String getRg() {
return this.rg;
}
public String setRg(String rg) {
return this.rg = rg;
}
public Data getDataEntrada() {
return this.dataEntrada;
}
public Data setDataEntrada(Data dataEntrada) {
return this.dataEntrada = dataEntrada;
}
public String getDepartamento() {
return this.departamento;
}
public String setDepartamento(String departamento) {
return this.departamento = departamento;
}
public double getSalario() {
return this.salario;
}
public double setSalario(double salario) {
return this.salario = salario;
}
void mostrarEmpregados(){
for(int i = 0; i < this.empregados.length; i++){
System.out.println("Funcionario na posicao: " + i);
System.out.println("Salario R$: " + empregados[i].getSalario());
System.out.println("Data: " + empregados[i].getDataEntrada().getFormataData());
System.out.println("Ganho Anual: " + empregados[i].calcularGanhoAnual());
System.out.println("Nome: " + empregados[i].getNome());
}
}
}
class Data {
int dia;
int mes;
int ano;
void preencherData(int dia, int mes, int ano){
this.dia = dia;
this.mes = mes;
this.ano = ano;
}
String getFormataData(){
return this.dia + "/" + this.mes + "/" + this.ano;
}
}
class Empresa {
private String nome;
private String cnpj;
private int livre = 0;
private Funcionario[] empregados;
public String getNome(){
return this.nome;
}
public String setNome(String nome){
return this.nome = nome;
}
public String getCnpj(){
return this.cnpj;
}
public String setCnpj(String cnpj){
return this.cnpj = cnpj;
}
public Funcionario getFuncionario(int posicao){
return this.empregados[posicao];
}
void adicionar (Funcionario f) {
this.empregados[this.livre] = f;
this.livre++;
}
}
class ProgramaFunc {
public static void main(String[] args) {
Empresa empresa = new Empresa();
empresa.empregados = new Funcionario[10];
Funcionario f1 = new Funcionario();
f1.setSalario(1000);
f1.setNome("Jakson Vieira");
Data f1data = new Data();
f1data.preencherData(10, 10, 1992);
f1.setDataEntrada(f1data);
f1.recebeAumento(600);
empresa.adicionar(f1);
Funcionario f2 = new Funcionario();
f2.setSalario(1000);
f2.setNome("Mario Vieira");
Data f2data = new Data();
f2data.preencherData(10, 10, 1999);
f2.setDataEntrada(f2data);
f2.recebeAumento(900);
empresa.adicionar(f2);
empresa.mostrarEmpregados();
}
}