You are on page 1of 5

1 º Semestre 2008 - Prof. MSc.

Ricardo Koji Ushizaki


Programação II - Aula 10 –14/04/2008

Laboratório – Herança em Java

Importante:

Antes de abrir o Eclipse, tenha certeza de que está no seu workspace correto.
Caso contrário você poderá estar usando o workspace de outro aluno.

Para selecionar o seu workspace:

Menu File  Switch Workspace

e escolha a pasta desejada.

Use o projeto POO da aula passada.

1
1º Semestre 2008 - Prof. MSc. Ricardo Koji Ushizaki
Programação II - Aula 10 –14/04/2008

Exercício Herança - Pessoa


Criar as classes do exercício da Pessoa, Estudante e Professor.

“Pessoa possui nome.


Estudante é uma pessoa que possui registro de aluno e estuda.
Professor é uma pessoa que possui registro de professor e leciona aulas.”

Classe Pessoa:
package br.unipaulistana.prog2.poo.pessoa;

public class Pessoa {


protected String nome;

public Pessoa(String nome) {


this.nome = nome;
}

public String getNome() {


return nome;
}
}

Notar que:
• Construtor recebe o nome da pessoa;
• Atributo nome é protected

2
1 º Semestre 2008 - Prof. MSc. Ricardo Koji Ushizaki
Programação II - Aula 10 –14/04/2008

Classe Estudante:
package br.unipaulistana.prog2.poo.pessoa;

public class Estudante extends Pessoa {

private int ra;

public Estudante(String nome) {


super(nome);
}

public int getRa() {


return ra;
}

public void setRa(int ra) {


this.ra = ra;
}

public void estudar() {


System.out.println("Estudante " + nome + " com ra=" + ra
+ " está estudando!");
}
}
Notar que:
• O construtor usa palavra-chave super para “repassar” o nome para o construtor da
superclasse Pessoa;
• No método estudar() estamos usando o atributo nome da superclasse Pessoa.

Classe Professor:
package br.unipaulistana.prog2.poo.pessoa;

public class Professor extends Pessoa {


private int registro;

public Professor(String nome) {


super(nome);
}

public int getRegistro() {


return registro;
}

public void setRegistro(int registro) {


this.registro = registro;
}

public void lecionar() {


System.out.println("Professor " + nome + " com registro=" + registro
+ " está lecionando!");
}
}

3
1 º Semestre 2008 - Prof. MSc. Ricardo Koji Ushizaki
Programação II - Aula 10 –14/04/2008

Testar Pessoas:
package br.unipaulistana.prog2.poo.pessoa;

public class TestarPessoas {

public static void main(String[] args) {


Pessoa seuMadruga = new Pessoa("Seu Madruga");

Estudante chaves = new Estudante("Chaves");


chaves.setRa(-1);

Professor girafales = new Professor("Girafales");


girafales.setRegistro(123);

chaves.estudar();
girafales.lecionar();
System.out.println("Nome da pessoa: " + seuMadruga.getNome());
}
}

Ao executar TestarPessoas a saída do programa deverá ser:

Estudante Chaves com ra=-1 está estudando!


Professor Girafales com registro=123 está lecionando!
Nome da pessoa: Seu Madruga

4
1º Semestre 2008 - Prof. MSc. Ricardo Koji Ushizaki
Programação II - Aula 10 –14/04/2008

Exercício Herança – Conta Corrente


Criar as classes do exercício da ContaCorrente:

“Uma conta corrente possui saldo. Ao criar uma conta corrente devemos passar um saldo
inicial. É possível depositar e sacar uma quantia e ver o saldo.

Uma conta universitária é uma conta corrente que possui o nome da Universidade.
Uma conta salário é uma conta corrente que possui o nome da empresa.
Uma conta especial é uma conta corrente que possui o nome da gerente da conta.

Criar classe TestarContas instanciando as quatro contas, invocando os métodos sacar,


depositar e ver o saldo de cada uma”

You might also like