Solucionado (ver solução)
Solucionado
(ver solução)
24
respostas

Exercicio 1 - orientação a objetos

Nao estou conseguindo sair daqui...não entedo ainda muito de orientação a objetos...

class Funcionario {

String nome; String departamento; double salario; String admissao; String rg;

void RecebeAumento(double AumentoSal){

This.salario += AumentoSal;

}

}

class Dados {

public static void main(strings[] args ) {

Funcionario cris = new empregado (); cris.departamento = recursoshumanos; cris.salario = 3.000; cris.admissao = 10/10/04; cris.rG = 0123456;

cris.RecebeAumento(1.000);

System.out.println("departamento"); System.out.println("salario"); System.out.println("admissao"); System.out.println("rG"); System.out.println("RecebeAumento");

}

}

24 respostas

alguem poderia me dar uma ajuda, não to conseguindo sair daqui

O que você não esta entendendo?

Um dos problemas do código acima não compilar é que a declaração do argumento do main

public static void main(String[] args)

obrigado...to querendo ver se consigo fazer as ligaçoes da class funcionario com a class dados

ele tem me dado todos esses erros....

Funcionario1.java:19: error: cannot find symbol public static void main(string[] args ) { ^ symbol: class string location: class Dados Funcionario1.java:11: error: cannot find symbol This.salario += AumentoSal; ^ symbol: variable This location: class Funcionario1 Funcionario1.java:21: error: cannot find symbol Funcionario cris = new empregado (); ^ symbol: class empregado location: class Dados Funcionario1.java:22: error: cannot find symbol cris.departamento = recursoshumanos; ^ symbol: variable recursoshumanos location: class Dados Funcionario1.java:24: error: cannot find symbol cris.admissao = 10/10/04; ^ symbol: variable admissao location: variable cris of type Funcionario Funcionario1.java:25: error: cannot find symbol cris.rG = 0123456; ^ symbol: variable rG location: variable cris of type Funcionario Funcionario1.java:27: error: cannot find symbol cris.RecebeAumento(1.000); ^ symbol: method RecebeAumento(double) location: variable cris of type Funcionario 7 errors

O Java é case-sensitive ou seja ele diferencia maiúscula de minuscula, observe que você esta escrevendo string e o correto é String

public static void main(String[] args){
}

Tente colocar seu código dentro bloco assim será mais fácil para ajuda-lo.

Outro problema é a instanciação do seu objeto Funcionario que esta dessa maneira:

Funcionario cris = new empregado();

forma correta:

Funcionario cris = new Funcionario();

Veja que você não possui nenhuma classe Empregado.

faça esses ajustes: Funcionario cris = new Funcionario ();


todas as atribuições em campos do tipo String deve estar com aspas duplas, por exemplo, cris.departamento = "recursos humanos";


ajuste todos os println com o seguinte formato: printl(cris.atributo).

Pessoal, muito obrigado pela ajuda, vou arrumar lá. obrigado

estava arrumando e ainda continua esses 4 erros... arrumei tudo que vocÊs falaram, desculpe, é minha primeira vez com orientação a objetos

Funcionario1.java:19: error: cannot find symbol public static void main(string[] args ) { ^ symbol: class string location: class Dados

Funcionario1.java:11: error: cannot find symbol This.salario += AumentoSal; ^ symbol: variable This location: class Funcionario1

Funcionario1.java:21: error: cannot find symbol Funcionario cris = new empregado (); ^ symbol: class empregado location: class Dados

Funcionario1.java:22: error: cannot find symbol cris.departamento = recursoshumanos; ^ symbol: variable recursoshumanos location: class Dados

Funcionario1.java:24: error: cannot find symbol cris.admissao = 10/10/04; ^ symbol: variable admissao location: variable cris of type Funcionario

Funcionario1.java:25: error: cannot find symbol cris.rG = 0123456; ^ symbol: variable rG location: variable cris of type Funcionario

Funcionario1.java:27: error: cannot find symbol cris.RecebeAumento(1.000); ^ symbol: method RecebeAumento(double) location: variable cris of type Funcionario 7 errors

Cole novamente aqui a sua classe DADOS que fica mais facil de analisar.

class Funcionario1 {

String nome;

String departamento;

double salario;

String admissao;

String rg;

void RecebeAumento(double AumentoSal){

This.salario += AumentoSal;

}

}

class Dados {

public static void main(String[] args ) {

Funcionario cris = new Funcionario ();

cris.departamento = "recursos humanos";

cris.salario = 3.000;

cris.admissao = "10 março 2004";

cris.rg = "0123456";

cris.RecebeAumento(1.000);

System.out.println("cris.departamento");

System.out.println("cris.salario");

System.out.println("cris.admissao");

System.out.println("cris.rg");

System.out.println("RecebeAumento");

}

}

em todos os println, tire as aspas.... fica só (cris.atributo)....


no ultimo println, alem de tirar as aspas, deixe (cris.RecebeAumento)

substitua class Funcionario1 por Funcionario.

Nivio, fiz tudo isso e agora me voltaram 7 erros

Funcionario1.java:11: error: cannot find symbol This.salario += AumentoSal; ^ symbol: variable This location: class Funcionario1

Funcionario1.java:24: error: cannot find symbol cris.admissao = "10 março 2004"; ^ symbol: variable admissao location: variable cris of type Funcionario

Funcionario1.java:25: error: cannot find symbol cris.rg = "0123456"; ^ symbol: variable rg location: variable cris of type Funcionario

Funcionario1.java:27: error: cannot find symbol cris.RecebeAumento(1.000); ^ symbol: method RecebeAumento(double) location: variable cris of type Funcionario

Funcionario1.java:31: error: cannot find symbol System.out.println(cris.admissao); ^ symbol: variable admissao location: variable cris of type Funcionario

Funcionario1.java:32: error: cannot find symbol System.out.println(cris.rg); ^ symbol: variable rg location: variable cris of type Funcionario

Funcionario1.java:33: error: cannot find symbol System.out.println(cris.RecebeAumento); ^ symbol: variable RecebeAumento location: variable cris of type Funcionario

Nivio, trocando a class, ficaram 2 erros

Funcionario1.java:11: error: cannot find symbol This.salario += AumentoSal; ^ symbol: variable This location: class Funcionario

Funcionario1.java:33: error: cannot find symbol System.out.println(cris.RecebeAumento); ^ symbol: variable RecebeAumento location: variable cris of type Funcionario 2 errors

acho que vc continua com FUNCIONARIO1.... vc tem que substituir por Funcionario (sem o 1).

ta na primeira linha do seu programa.

eu fiz isso ja, deixei Funcionario.. me sai ainda esses dois erros

Funcionario.java:11: error: cannot find symbol This.salario += AumentoSal; ^ symbol: variable This location: class Funcionario

Funcionario.java:33: error: cannot find symbol System.out.println(cris.RecebeAumento); ^ symbol: variable RecebeAumento location: variable cris of type Funcionario 2 errors

Lembre-se do case-sensitive, você esta escrevendo This.salario e a forma correta é:

this.salario +=AumentaSal;

Modifique o Modificador de acesso da sua classe Dados para public class Dados, o seu arquivo java deve possuir o mesmo nome da classe publica Dados.java, além disso somente uma classe pode ser public a outra deve ficar como esta, o ponto separa as casas decimais, observe o código abaixo:

class Funcionario1{
       String nome;
       String departamento;
       double salario;
       String admissao;
       String rg;
       void RecebeAumento(double AumentoSal){
            this.salario += AumentoSal;
       }
}
public class Dados{
     public static void main(String[] args) {
            Funcionario cris = new Funcionario();
            cris.departamento = "recursos humanos";
            cris.salario = 3000.00;
            cris.admissao = "10 março 2004";
            cris.rg = "0123456";
            cris.RecebeAumento(1000.00);
            System.out.println(cris.departamento);
            System.out.println(cris.salario);
            System.out.println(cris.admissao);
            System.out.println(cris.rg);            
     }
}

Diego, fiz as modificações.. e continua esses dois erros

Funcionario.java:17: error: class Dados is public, should be declared in a file named Dados.java public class Dados { ^

Funcionario.java:33: error: cannot find symbol System.out.println(cris.RecebeAumento); ^ symbol: variable RecebeAumento location: variable cris of type Funcionario

solução!

Como tinha dito modifique seu arquivo para Dados.java e dentro do arquivo as declarações das classes devem ficar dessa maneira:

class Funcionario{
}
public class Dados{
}

O segundo erro é que você esta tentando imprimir um método que está escrito de forma incorreta e que não retorna nada, se caso retornasse funcionaria encontre a linha abaixo e apague-a:

System.out.println(cris.RecebeAumento);

Pessoal, Muito OBrigado,

conseguimos fazer funcionar... valeu mesmo

boa noite

Boa sorte!!!