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”

5