Herança simples

8 respostas
R

Bom dia,

Criei um projeto e pretendo fazer herança com ele.

Fiz as classes PessoaFisica, PessoaJuridica e Pessoa (o eclipse os salvou como .java). Agora quero fazer a herança, porém quando vou criar o arquivo como se fosse classe ClassPessoaFisica extends Pessoa (por exemplo) não sei como salvo ele e também nao sei se é classe, arquivo ou interface. Alguam pode me ajudar em dizer que tipo de arquivo seria? Estou no eclipse 3.3.2.

Valeu.

8 Respostas

andrey.oliveira

Normal, vc cria uma classe como outra qualquer, apenas estendendo (herdando) os atributos e métodos da classe principal (pessoa). O Eclipse se encarrega de criar o arquivo .java.

G

Um exemplo bem simples

Classe Abstrata

public abstract class Pessoa {
	
	private String nome;

	public String getNome() {
		return nome;
	}

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

}

Herança

public class PessoaFisica extends Pessoa {
	private String rg;

	public String getRg() {
		return rg;
	}

	public void setRg(String rg) {
		this.rg = rg;
	}
	
}

Exemplo de Utilização

public class App {

	public static void main(String[] args) {
		PessoaFisica p = new PessoaFisica();
		p.setNome("Gabriel");
		p.setRg("123456");
	}
}
pintofree

Uma classe herdada, extendida ou uma interface nao direferem na extensão amigo, apenas no conteudo e forma de utilização.

R

Pois é, estou fazendo assim: criando uma classe chamada PessoaFisica extends Pessoa

Isso é certo? Eu sinceramente acho que nao por que o eclipse nao deixa salvar ela.

Só quero saber como criar o arquivo, pq o codigo ja tenho.

Flw.

LPJava

salva como .java para melhor entender… pegue o codigo, abre o notepad e digite ele, depois salve .java e mande compilar via prompt!

rmendes08

Só mais algumas observações … Lembre-se que você só pode declarar uma classe pública por arquivo. Pode ser que o eclipse esteja travando aí. Se todas as classes devem ser públicas, declare uma em cada arquivo.

thinet
Gbzao!:
Um exemplo bem simples Classe Abstrata
public abstract class Pessoa {
	
	private String nome;

	public String getNome() {
		return nome;
	}

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

}
Herança
public class PessoaFisica extends Pessoa {
	private String rg;

	public String getRg() {
		return rg;
	}

	public void setRg(String rg) {
		this.rg = rg;
	}
	
}
Exemplo de Utilização
public class App {

	public static void main(String[] args) {
		PessoaFisica p = new PessoaFisica();
		p.setNome("Gabriel");
		p.setRg("123456");
	}
}

Olá amigos, só uma dúvida, em uma classe abstrata, os métodos podem ter corpo?
Obrigado

B

thinet:
Olá amigos, só uma dúvida, em uma classe abstrata, os métodos podem ter corpo?
Obrigado

Podem. Aliás, se não tivessem, não seriam mais que uma interface.

Criado 11 de junho de 2008
Ultima resposta 12 de jun. de 2008
Respostas 8
Participantes 8