Lab 02.02 - Classes e Encapsulamento (Continuação)

Para cada exercício, todas as classes devem ser feitas e testadas no mesmo projeto. Para cada classe, crie uma classe separada para testar a sua classe.

Vamos usar encapsulamento, então todo atributo deve ser private e, se precisar, ter um get e/ou set.

Exercicio 01

Fazer uma classe, que respeite as convenções de encapsulamento que representa um Carro, que seja composta por

Pessoa:

Modelo:

TanqueDeGasolina:

Fazer uma classe Posto que vai abastecer o carro

Fazer uma classe Cartorio que vai abastecer o carro

Fazer o TesteCarro que testa todas os métodos do carro e imprime um relatório após cada um deles.

Exercício 02

Neste exercício você irá fazer um programa que simula uma uma clínica veterinária.

Diagrama de Classes

IMPORTANTE: Para cada classe que você fizer, teste! antes de continuar. Trate cada classe como se fosse um exercício separado. Teste em um arquivo separado

Um Cachorro deve ter

O Gato deve ser igual ao cachorro, com algumas diferenças:

O Pato deve ser igual ao cachorro, com algumas diferenças:

Crie uma classe Veterinaria para cuidar do Cachorro, Gato e Pato, um método estático para cada, que siga o seguinte exemplo:

public class Veterinaria {

	public static void cuidaDoCachorro(Cachorro cachorro) {
		System.out.println("Recebendo " + cachorro.getNome());
		if(!cachorro.getIsDoente()) {
			System.out.println("O cachorro está saudável");
			return;
		}

		System.out.println("Dando injeção para o animalzinho");
		cachorro.darInjecao();
		cachorro.latir();
		cachorro.comer();
		cachorro.dormir();
	}

}

Faça a classe Cuidador, esta classe deve ter:

Crie classes separadas para testar cada uma das suas classes, por exemplo:

public class TestaVeterinaria {

	public static void main(String[] args) {
		Cachorro cachorro01 = new Cachorro("Brutus", 12, 5.0);
		Veterinaria.cuidaDoCachorro(cachorro01);

		cachorro01.adoece();
		Veterinaria.cuidaDoCachorro(cachorro01);
	}

}

Crie a TestaCuidador, TestaCachorro, TestaGato, TestaPato.

Exercício 03

Neste exercício você irá fazer o cadastro de um aluno, e seu histórico escolar.

Cada aluno tem os seguintes dados:

Por sua vez, uma materia tem

Cada aluno deverá ter um método chamado fazRelatorio que imprime na tela os dados de um aluno. E as matérias que ele cursou.

Exercício 04

Neste exercício você irá fazer o cadastro de um aluno, e seu histórico escolar com notas em cada matéria.

Cada aluno tem os seguintes dados:

Um rendimento é composto por uma materia e suas notas

Uma materia tem

E as notas são compostos por três valores:

Cada rendimento deverá ter o método public boolean getAprovacao que responde se o aluno passou naquela matéria. A regra para um aluno ser aprovado é

Cada aluno deverá ter um método chamado fazRelatorio que imprime na tela os dados de um aluno, as matérias que ele cursou e a nota e situação de cada matéria.