Programa não sei fazer

35 respostas
T

Alguém poderia me ajudar com esse programa básico para alguns difícil para mim!

  1. Uma classe Pessoa com atributos nome e sobrenome. Cada um desses
    atributos deve ter métodos para acessa-los e altera-los. A classe Pessoa
    ainda deve ter um método getNomeCompleto que não possui parâmetro
    de entrada e que retorna a concatenação do atributo nome com o atributo
    sobrenome separados por um espaço. A classe deve também possuir um
    construtor sem parâmetros e um outro construtor que recebe como
    parâmetros o nome e o sobrenome da pessoa e altera esses atributos;
  2. Crie uma subclasse de Pessoa chamada Funcionario, que possui os
    atributos matricula e salario com seus métodos de acesso e alteração
    (getters e setters). Todo funcionário recebe seu salário em duas parcelas,
    60% na primeira parcela e 40% na segunda parcela. Crie dois métodos
    getSalarioPrimeiraParcela e getSalarioSegundaParcela que retorna o
    valor correto de cada parcela;
  3. Crie uma subclasse de Funcionário chamada Professor, mas que recebe
    seu salário em uma única parcela, diferentemente dos demais funcionários.
    Crie os métodos que achar necessário para professor;
  4. Por fim, crie uma classe que instancia três objetos, uma Pessoa, um
    Funcionário e um Professor. Insira o nome e sobrenome dos objetos
    exibindo-os no console, além de preencher seus salários (de quem tiver)
    exibindo as respectivas parcelas.

35 Respostas

danieldomingues86

Ola,

Poste ai o que voce ja fez para que agente possa dar uma olhada.

Abraco.

T
public class RegistraPessoa {

private String nome;

private String sobrenome;
private static int contadorPessoa;

// retorna o nome da pessoa
public String getNome(){
	Return nome;

// define ou altera o nome da pessoa
public void setNome(String temp){
	Nome = temp;

}

// retorna sobrenome
public String getSobrenome(){;
	Return sobrenome;
// define ou altera o nome da pessoa

public void setSobrenome(String temp){

sobrenome = temp;

}
danieldomingues86

Ola,

Primeiro gostaria de dar umas dicas sobre seu codigo :

  • No forum use as tags [ code ][ /code ] para deixar o codigo mais legivel de ser ler.
  • cuidado com a palavra return que voce escreveu em maisculo , o return eh escrito em minusculo
  • cuidado tambem com o abrir e fechar dos colchetes tem uns faltando para fechar

Agora vou colocar o codigo que voce postou e eu ja dei uma ajeitada nele com base nisso que citei acima
e criei o que faltava para completar o numero 1 do seu exercicio.

public class Pessoa {

	private String nome;
	private String sobrenome;
	
	// construtor default
	public Pessoa() {
		super();
	}
	
              // construtor com nome e sobrenome
	public Pessoa(String nome, String sobrenome) {
		setNome(nome);
		setSobrenome(sobrenome);
	}
	

	// retorna o nome da pessoa
	public String getNome() {
		return nome;
	}

	// define ou altera o nome da pessoa
	public void setNome(String temp) {
		this.nome = temp;
	}

	// retorna sobrenome
	public String getSobrenome() {
		return sobrenome;
	}

	// define ou altera o nome da pessoa
	public void setSobrenome(String temp) {
		this.sobrenome = temp;
	}
	
	//retorna nome completo
	public String getNomeCompleto(){
		return this.nome + " " + this.sobrenome;
	}

}

Tenta fazer o resto e posta que agente vai dando uma olhada.

Flw, Um abraco.

Tiburcio_Mancha
public class Pessoa {
	
	private String nome;
	
	private String sobrenome;

	public Pessoa() {
		
	}

	public Pessoa(String nome, String sobrenome) {
		super();
		this.nome = nome;
		this.sobrenome = sobrenome;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getSobrenome() {
		return sobrenome;
	}

	public void setSobrenome(String sobrenome) {
		this.sobrenome = sobrenome;
	}
	
	public String getNomeCompleto(){
		
		return this.getNome()+" "+this.getSobrenome();
				
	}
	

}
Tiburcio_Mancha

ow daniel, foi mal, naum vi q vc já tinha respondido…

danieldomingues86

Magina kra, assim ele(a) aprende duas vezes :slight_smile:

Flw.

T

não tá rodando … digitei certinho…ajuda

T

estou usando o netbeans e veja que:
/*

  • Main.java
  • Created on 16 de Agosto de 2009, 20:20
  • To change this template, choose Tools | Template Manager
  • and open the template in the editor.
    */

package javaapplication21;

/**
*

  • @author tulipa
    */
    public class Main {

    /** Creates a new instance of Main */
    
    public Main() {
    
    }
    

    /**

    • @param args the command line arguments
      */
      public static void main(String[] args) {
      // TODO code application logic here
      public class Pessoa {
      private String nome;
      private String sobrenome;
      // construtor default
      public Pessoa() {
      super();
      }
// construtor com nome e sobrenome

public Pessoa(String nome, String sobrenome) {

setNome(nome);

setSobrenome(sobrenome);

}
// retorna o nome da pessoa

public String getNome() {

return nome;

}
// define ou altera o nome da pessoa

public void setNome(String temp) {

this.nome = temp;

}

// retorna sobrenome

public String getSobrenome() {

return sobrenome;

}

// define ou altera o nome da pessoa

public void setSobrenome(String temp) {

this.sobrenome = temp;

}
//retorna nome completo

public String getNomeCompleto(){

return this.nome + " " + this.sobrenome;

}

}

}

}

danieldomingues86

Ola,

Olha voce nao pode jogar de jeito nenhum todo o codigo que te passei dentro do metodo main

Voce tem que enteder que isso que foi criado eh um JavaBean e ele eh uma classe que sera utilizado dentro do main
atraves de instancia de objetos e nao assim.

Faca o seguinte, recomendo voce entrar no site da Caelum e ler a apostila deles FJ-11 que te dara toda uma base para voce poder
criar o codigo que precisa.

Flw.

T
oi, Daniel, baixei a apostila. Veja que sei que tenho muito que aprender na verdade estou por conta própria  consegui estalar o java netBeans, e fiz alguns programinha como média e coisinhas básicas tipo soma de dois números, testei array e vetores, astava indo bem até que começei a olhar OO. Tipo sei que tenho que criar classes, metodos e instancialos tipo  chama-los. Exemplo: Pessoa = f1 new Pessoa();

é  chama (aciona) o método que mostra a pessoa assim: f1.exibeDados(), esta chamada seria a partir de outra classe, para que funcione deveria criar uma classe exibe dados tipo:

//** exibe dados da pessoa

public void exibeDados() {

System.out.println (nome);

System.out.println(sobrenome);

Sei que tenho que fazer um curso, mas a grana  curta, além do mais acredito que quando tiver dimdim vou aproveita muiiiiito, pois não sairei do zero

 insistindo pq vc e o outro colega se mostraram atenciosos. No mais valeu a força.
T

desculpe os erros de português. Depois do bla-bla-bla de cima. Pergunto, tenho as classes, os metodos, sei instacia-los, mas se digito uma classe devo grava-la sem rodar, digitar o instanciamento é aí sim rodar shift+f6 e vê se funciona???

danieldomingues86

Ola, fico feliz que voce esta comecando a entender pois pelo que escreveu no post acima ja esta comecando a entender como funciona

para te ajudar bastante sobre sua duvida oque rodar e se eh so escrever a classe e depois fazer oque com ela? Vou te dar um exemplo pratico com base nesse seu programa para que voce entenda melhor ainda o funcionamento ok?

Esse aqui chama-se JavaBean eh uma classe que voce nao vai rodar ela, so vai deixar armazenada para ser usada:

public class Pessoa {   
  
    private String nome;   
    private String sobrenome;   
       
    // construtor default   
    public Pessoa() {   
        super();   
    }   
       
              // construtor com nome e sobrenome   
    public Pessoa(String nome, String sobrenome) {   
        setNome(nome);   
        setSobrenome(sobrenome);   
    }   
       
  
    // retorna o nome da pessoa   
    public String getNome() {   
        return nome;   
    }   
  
    // define ou altera o nome da pessoa   
    public void setNome(String temp) {   
        this.nome = temp;   
    }   
  
    // retorna sobrenome   
    public String getSobrenome() {   
        return sobrenome;   
    }   
  
    // define ou altera o nome da pessoa   
    public void setSobrenome(String temp) {   
        this.sobrenome = temp;   
    }   
       
    //retorna nome completo   
    public String getNomeCompleto(){   
        return this.nome + " " + this.sobrenome;   
    }   
  
}

Essa classe abaixo sim que voce vai rodar, ai voce me pergunta porque so essa ? porque eh nessa que esta o metodo main ele eh o coracao do seu programa eh por ela que comeca a sua aplicacao.

Repare que dentro dela eu uso a classe de cima na hora que eu faco Pessoa p = new Pessoa(); eu crio uma instancia da classe Pessoa nesse ponto do programa ai eu posso agora com ela criada chamar seus metodos, Assim :

public class Teste {

	public static void main(String[] args) {

		Pessoa p = new Pessoa();
		p.setNome("Carlos");
		p.setSobrenome("Moura");

		//imprime nome + sobrenome
		System.out.println(p.getNomeCompleto());
		

	}

}

Ah mais uma coisa leia bem essa apostila que voce vai entender bem como comecar a programar da forma correta com Java.

Qualquer coisa eh so postar
Um abraco.

T

Olá, seguinte digitei pessoa…ok sem erros…
/*

  • Main.java
  • Created on 18 de Agosto de 2009, 10:08
  • To change this template, choose Tools | Template Manager
  • and open the template in the editor.
    */

package javaapplication25;

/**
*

  • @author Tulipa
    */
public class Main {

public class Pessoa {

private String nome;

private String sobrenome;

// construtor default

public Pessoa() {

super();

}
// construtor com nome e sobrenome

public Pessoa(String nome, String sobrenome) {

setNome(nome);

setSobrenome(sobrenome);

}
// retorna o nome da pessoa

public String getNome() {

return nome;

}
// define ou altera o nome da pessoa

public void setNome(String temp) {

this.nome = temp;

}

// retorna sobrenome

public String getSobrenome() {

return sobrenome;

}

// define ou altera o nome da pessoa

public void setSobrenome(String temp) {

this.sobrenome = temp;

}
//retorna nome completo

public String getNomeCompleto(){

return this.nome + " " + this.sobrenome;

}

}

}
T

porém ao digitar o complemento abaixo…deu erro…
cannot find symbol
symbol: class Pessoa
locatin: class javaapplication26.main

  • Main.java
  • Created on 18 de Agosto de 2009, 10:09
  • To change this template, choose Tools | Template Manager
  • and open the template in the editor.
    */

package javaapplication26;

/**
*

  • @author Tulipa
    */
    public class Main {

    public static void main(String[] args) {
    
    // TODO code application logic here
    
    Pessoa p = new Pessoa();
    
    p.setNome(Carlos);
    
    p.setSobrenome(Moura);
    
    //imprime nome + sobrenome   
     System.out.println(p.getNomeCompleto());
    

    }
    }

danieldomingues86

Ola,

De uma olhada nesse trecho de codigo que voce postou, vou colocar aqui abaixo novamente :

public class Main { 
public class Pessoa { 
private String nome; 
private String sobrenome; 
// construtor default 
public Pessoa() { 
super(); 
}

Agora veja o codigo que eu te passei como solucao, verfique se o seu esta igual.
Porque voce criou public class Main e dentro voce ainda criou public class Pessoa ?

Obs : Use as tags [code] para postar o codigo de forma legivel para que fique mais facil fazer sua leitura.

Um Abraco.
Flw.

wesleysanches
public class Pessoa {   
  
    private String nome;   
    private String sobrenome;   
       
    // construtor default   
    public Pessoa() {   
        super();   
    }   
       
              // construtor com nome e sobrenome   
    public Pessoa(String nome, String sobrenome) {   
        setNome(nome);   
        setSobrenome(sobrenome);   
    }   
       
  
    // retorna o nome da pessoa   
    public String getNome() {   
        return nome;   
    }   
  
    // define ou altera o nome da pessoa   
    public void setNome(String temp) {   
        this.nome = temp;   
    }   
  
    // retorna sobrenome   
    public String getSobrenome() {   
        return sobrenome;   
    }   
  
    // define ou altera o nome da pessoa   
    public void setSobrenome(String temp) {   
        this.sobrenome = temp;   
    }   
       
    //retorna nome completo   
    public String getNomeCompleto(){   
        return this.nome + " " + this.sobrenome;   
    }   
  
}

Desculpe entrar assim do nada no tópico, mas … uma dúvida.

Oque é e para que serve a palavra-chave super(); ??
Igual no exemplo acima, foi criado um constructor para a classe e colocado o código super();
E depois foi criado outro constructor ?? Para q outro constructor, não deveria ser somente 1 ??

vlw e desculpe a pergunta se foi meio idiota. rsrs

danilopelegrino
wesleysanches:
public class Pessoa {   
  
    private String nome;   
    private String sobrenome;   
       
    // construtor default   
    public Pessoa() {   
        super();   
    }   
       
              // construtor com nome e sobrenome   
    public Pessoa(String nome, String sobrenome) {   
        setNome(nome);   
        setSobrenome(sobrenome);   
    }   
       
  
    // retorna o nome da pessoa   
    public String getNome() {   
        return nome;   
    }   
  
    // define ou altera o nome da pessoa   
    public void setNome(String temp) {   
        this.nome = temp;   
    }   
  
    // retorna sobrenome   
    public String getSobrenome() {   
        return sobrenome;   
    }   
  
    // define ou altera o nome da pessoa   
    public void setSobrenome(String temp) {   
        this.sobrenome = temp;   
    }   
       
    //retorna nome completo   
    public String getNomeCompleto(){   
        return this.nome + " " + this.sobrenome;   
    }   
  
}

Super(); serve para chamar o construtor da classe base. Ou em outras palavras da classe mãe quando a herança.

Se não houver herança, ele ira chamar o contrutor da classe Object(), isso por que por default todas as classe em java herdam de Object.

entendeu?

espero ter ajudado fuizzz

Desculpe entrar assim do nada no tópico, mas ... uma dúvida.

Oque é e para que serve a palavra-chave super(); ??
Igual no exemplo acima, foi criado um constructor para a classe e colocado o código super();
E depois foi criado outro constructor ?? Para q outro constructor, não deveria ser somente 1 ??

vlw e desculpe a pergunta se foi meio idiota. rsrs

H

Você pode ter mais de um construtor para o caso de querer criar um objeto utilizando parâmetros diferentes.

Ex: Criar uma pessoa que tem nome e não tem sobrenome.

danieldomingues86

Ola wesleysanches,

A chamada super() chamara o construtor da superclasse no caso a classe Object, ele nao eh necessario pois essa chamada eh feita automaticamente na hora que a aplicacao roda. Coloquei para demostrar apenas seu uso.

Voce pode ter quantos construtores quiser.

Existem dois construtores exatamente como o colega disse acima pois no caso de voce quiser usar um ou outro voce tera essa opcao na hora de instanciar seus objetos.

Flw.

T
oi, daniel, volte! Seguinte o código digitado foi igual.
package javaapplication25;

public class Pessoa {   
  
    private String nome;   
    private String sobrenome;   
       
    // construtor default   
    public Pessoa() {   
        super();   
    }   
       
              // construtor com nome e sobrenome   
    public Pessoa(String nome, String sobrenome) {   
        setNome(nome);   
        setSobrenome(sobrenome);   
    }   
       
  
    // retorna o nome da pessoa   
    public String getNome() {   
        return nome;   
    }   
  
    // define ou altera o nome da pessoa   
    public void setNome(String temp) {   
        this.nome = temp;   
    }   
  
    // retorna sobrenome   
    public String getSobrenome() {   
        return sobrenome;   
    }   
  
    // define ou altera o nome da pessoa   
    public void setSobrenome(String temp) {   
        this.sobrenome = temp;   
    }   
       
    //retorna nome completo   
    public String getNomeCompleto(){   
        return this.nome + " " + this.sobrenome;   
    }   
  
}
Porém aparece o seguinte erro: Classe "javaapplication25" não tem um método main. Dai coloquei o main..rsrsrs..é o erro desapareceu porém, qdo rodei o principal não encontra o metodo Pessoa???
danieldomingues86

Ola tulipa,

Olha voce esta fazendo uma grande confusao rsrs, mas nao tem problema sei que voce esta aprendendo
Vou tentar te ajudar :

Pense assim voce precisa de duas classes para fazer funcionar

Uma eh a classe Pessoa , eh essa ai que voce postou esta certinha ja !
e a outra eh uma OUTRA CLASSE qualquer que tenha o metodo main para voce poder criar a classe Pessoa entendeu?

Essa classe pessoa voce ja fez esta ai acima, agora o que voce deve fazer dentro do metodo main (que esta em outra classe)
eh isso :

Pessoa p = new Pessoa();

e depois que voce fez isso voce pode usar Pessoa ainda dentro do main(), claro por exemplo chamando :

p.getNome();
p.getSobrenome() ;

Tente ai caso nao consiga poste todo seu codigo ai (das duas classes) que eu te mostro como ficaria. Mas primeiro tente fazer rsrsr :slight_smile:

obs : deixe as duas classes no mesmo pacote inicialmente para voce entender como funciona, asim fica mais facil no comeco.

Um abraco
Daniel.

T
olá Daniel, aprendendo para nunca mais esquecerrsrs

vou deixar as duas classes em um único arquivo como vc faloumais veja,  entendi que ficam separadas e que rodo somente a parte chamada Teste”… veja todo o código junto é o erro que deu

init:

deps-jar:

Compiling 1 source file to C:\Users\Tulipa\JavaApplication25\build\classes

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:12: class Pessoa is public, should be declared in a file named Pessoa.java

public class Pessoa {

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:55: class Teste is public, should be declared in a file named Teste.java

public class Teste {

2 errors

FALHA NA EXECUÇÃO (tempo total: 0 segundos)
/*
 * Main.java
 *
 * Created on 18 de Agosto de 2009, 10:08
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package javaapplication25;

public class Pessoa {   
  
    private String nome;   
    private String sobrenome;   
       
    // construtor default   
    public Pessoa() {   
        super();   
    }   
       
              // construtor com nome e sobrenome   
    public Pessoa(String nome, String sobrenome) {   
        setNome(nome);   
        setSobrenome(sobrenome);   
    }   
       
  
    // retorna o nome da pessoa   
    public String getNome() {   
        return nome;   
    }   
  
    // define ou altera o nome da pessoa   
    public void setNome(String temp) {   
        this.nome = temp;   
    }   
  
    // retorna sobrenome   
    public String getSobrenome() {   
        return sobrenome;   
    }   
  
    // define ou altera o nome da pessoa   
    public void setSobrenome(String temp) {   
        this.sobrenome = temp;   
    }   
    
    //retorna nome completo   
    public String getNomeCompleto(){   
        return this.nome + " " + this.sobrenome;   
    }   
  
}   
public class Teste {

	public static void main(String[] args) {

		Pessoa p = new Pessoa();
		p.setNome("Carlos");
		p.setSobrenome("Moura");

		//imprime nome + sobrenome
		System.out.println(p.getNomeCompleto());
		

	}

}
Jairo_Junior1

Você deve aprender a interpretar os erros gerados pelo compilador, veja, ele diz que as classes Pessoa e Teste são públicas e devem ser declaradas num arquivo chamado “NomeDaClasse.java”, existem duas soluções, colocar cada classe em um arquivo, ou colocar somente a classe Teste como pública, pois ela contém o método main, ou seja, na linha 12, ao invés de "public class Pessoa { ", ficaria "class Pessoa { ", então embora você possa ter várias classes em um único arquivo, não pode ter várias classe públicas no mesmo.

danieldomingues86

Ola tulipa,

É exatamente o que o colega acima disse, quando voce compilar seus arquivos analise os erros, mas olha só por esse erro
aí já ta facil de saber o que aconteceu. Voce provavelemente salvou suas classes com qualquer outro nome que não
seja Pessoa.java e Teste.java .

Por elas serem classes publicas a regra é que devem ser salvas com o mesmo nome que foram criadas.

Ex : public class Pessoa { } ===> deve salvar o arquivo como Pessoa.java

(obs : lembre-se que Pessoa.java nao é o mesmo que pessoa.java - Case Sensitive)

Flw.

T
Oi, executei a alteração e veja os errosNão sei interpletar o erro, poderiam ajudar?

Compiling 1 source file to C:\Users\Tulipa\JavaApplication25\build\classes

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:12: class, interface, or enum expected

public Pessoa {

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:15: class, interface, or enum expected

private String sobrenome;

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:18: class, interface, or enum expected

public Pessoa() {

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:20: class, interface, or enum expected

}

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:23: class, interface, or enum expected

public Pessoa(String nome, String sobrenome) {

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:25: class, interface, or enum expected

setSobrenome(sobrenome);

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:26: class, interface, or enum expected

}

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:30: class, interface, or enum expected

public String getNome() {

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:32: class, interface, or enum expected

}

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:35: class, interface, or enum expected

public void setNome(String temp) {

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:37: class, interface, or enum expected

}

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:40: class, interface, or enum expected

public String getSobrenome() {

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:42: class, interface, or enum expected

}

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:45: class, interface, or enum expected

public void setSobrenome(String temp) {

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:47: class, interface, or enum expected

}

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:50: class, interface, or enum expected

public String getNomeCompleto(){

C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:52: class, interface, or enum expected

}

17 errors

FALHA NA EXECUÇÃO (tempo total: 0 segundos)
Jairo_Junior1

Poste seu código aqui, provavelmente você usou “{” de mais hahahaha

danieldomingues86

Olha uma dica veja a quarta linha desse seu ultimo post (exatamente a quarta) e veja se faz algum sentindo.

Flw.

T

Oi Daniel, a 4ª linha e o construtor default que vc no caso explicou q não seria obrigatoria??? Enfim, percebo que ele reclama logo na primeira linha “public Pessoa {”, o colega diz que seria { demais… olhei e tá certinho…claro pra mim…e por isso não funciona…rsrsrs veja o código.

package javaapplication25;

public Pessoa {  
  
    private String nome;   
    private String sobrenome;   

    // construtor default   
    public Pessoa() {   
        super();   
     }   

              // construtor com nome e sobrenome   
    public Pessoa(String nome, String sobrenome) {   
        setNome(nome);   
        setSobrenome(sobrenome);   
    }   
       
  
    // retorna o nome da pessoa   
    public String getNome() {   
        return nome;   
    }   
  
    // define ou altera o nome da pessoa   
    public void setNome(String temp) {   
        this.nome = temp;   
    }   
  
    // retorna sobrenome   
    public String getSobrenome() {   
        return sobrenome;   
    }   
  
    // define ou altera o nome da pessoa   
    public void setSobrenome(String temp) {   
        this.sobrenome = temp;   
    }   
    
    //retorna nome completo   
    public String getNomeCompleto(){   
        return this.nome + " " + this.sobrenome;   
    }   
}
public class Teste {

	public static void main(String[] args) {

		Pessoa p = new Pessoa();
		p.setNome("Carlos");
		p.setSobrenome("Moura");

		//imprime nome + sobrenome
		System.out.println(p.getNomeCompleto());
		

	}

}
edmarr
public Pessoa {

por

public class Pessoa {

Esta faltando a palavra reservada class .

Jairo_Junior1

edmarr:
public Pessoa {

por

public class Pessoa {

Esta faltando a palavra reservada class .


Na verdade, ele deve colocar só: class Pessoa e não: Public Pessoa o erro está na linha 3 do seu código, era isso que o daniel estava tentando alertar.

edmarr

Depende muito de como ele quer filtrar as permissoes de pacote e classes . Para ele optar pelo modificador de acesso .

Jairo_Junior1

Se ele tiver duas classes públicas no mesmo arquivo, não vai compilar.
O objetivo dele é testar o programa.

heladioxerez

OBS: para a classe funcionario rodar você tera que declarar as variaveis na classe Pessoa como public ou protected.

public class Funcionario extends Pessoa{
    
    int matricula;
    int salario;

    
    public Funcionario(){}
    
    public Funcionario(int mat, int sal, String nom, String sobreNom ){
        
        super.nome = nom;
        super.sobrenome = sobreNom;
        this.matricula = mat;
        this.salario = sal;
    }



    public void setNome(String nom){
        super.nome = nom;
    }
    

    public void setSobrenome(String sobreNom){
        super.sobrenome = sobreNom;
    }
    
    public void setMatricula(int mat){
        matricula = mat;
    }
    
    public void setSalario(int sal){
        salario = sal;
    }
    
    public int getMatricula(){
        return matricula;
    }
    
    public int getSalario(){
        return salario;
    }
}
heladioxerez
public class Pessoa {  
        
      protected String nome;         
      protected String sobrenome;  
     
      public Pessoa() {  
            
      }  
    
      public Pessoa(String nome, String sobrenome) {  
          
          this.nome = nome;  
          this.sobrenome = sobrenome;  
      }  
    
      public String getNome() {  
          return nome;  
      }  
    
      public void setNome(String nome) {  
          this.nome = nome;  
      }  
    
      public String getSobrenome() {  
          return sobrenome;  
      }  
    
      public void setSobrenome(String sobrenome) {  
          this.sobrenome = sobrenome;  
      }  
        
      public String getNomeCompleto(){  
            
          return this.getNome()+" "+this.getSobrenome();  
                    
      }  
        
    
  }
ViniGodoy

Tulipa, por favor, quando for postar códigos, use a tag code.

Assim seu código fica colorido e formatado, como o postado pelos colegas.
Se você não sabe usar esse recurso, peço que leia o seguinte tópico, que vai te ensinar esse e outros recursos do fórum:
http://www.guj.com.br/posts/list/50115.java

Muita gente nem sequer lê o tópico quando o código não está formatado.
Mesmo os que lêem, perdem o interesse rapidamente caso você não formate nunca.

Fica aí a dica. :wink:

Criado 16 de agosto de 2009
Ultima resposta 30 de ago. de 2009
Respostas 35
Participantes 10