POO - Introdução

Propaganda
Programação
Orientada a Objetos*
Exercícios
Prof. Isabel Cafezeiro
[email protected]
http://www.dcc.ic.uff.br/~isabel
*Baseado no livro Introdução à Programação Orientada a Objetos
usando JAVA – Rafael Santos – Editora Campus – Série SBC
Figuras geométricas
Imagine as seguintes entidades:
Círculos, Quadrados e Triângulos.
Quais são os componentes de cada uma destas entidades?
Qual é o comportamento de cada uma entidade?
Figuras geométricas
Círculos, Quadrados e Triângulos.
Tomando como referência o modelo da lâmpada (aula 1);
Escreva modelos para Círculos, Quadrados e Triângulos:
Quais são os dados de cada modelo?
Quais são as operações de cada modelo?
Imagine que as figuras podem ser movidas,
aumentadas, diminuídas, mostradas, comparadas, etc.
Descreva em pseudo-código cada operação
do modelo, lembrando-se de informar parâmetros e retorno
de operações quando for o caso.
Figuras geométricas
Círculos, Quadrados e Triângulos
Escreva classes em Java para implementar Círculos,
Quadrados e Triângulos. Não é preciso desenhar as figuras,
apenas manipular suas coordenadas.
Compile cada classe.
Escreva uma classe usuária destas figuras, que permita
testar cada método das figuras. Compile e teste as classes.
A documentação de java
Círculos, Quadrados e Triângulos
Problema surgido: Como se faz exponencial em Java?
Como consultar a documentação de java?
No diretório de instalação do java,
Subdiretório Docs, Arquivo index.html . Ou
em: http://java.sun.com/j2se/1.5.0/docs/index.html
A documentação de java
A documentação de java
API Specifications
Package java.lang
Package java.lang.ref
Package java.lang.reflect
Package java.util
Package java.util.prefs
Package java.util.logging
Package java.util.regex
Package java.util.jar
Package java.util.zip
A documentação de java
Package java.lang
....
Class Summary
BooleanThe Boolean class wraps a value of the primitive type boolean in
an object.
ByteThe Byte class wraps a value of primitive type byte in an object.
....
MathThe class Math contains methods for performing basic numeric
operations such as the elementary exponential, logarithm, square root, and
trigonometric functions.
A documentação de java
java.lang
Class Math
java.lang.Object java.lang.Math
....
Method Summary
static double abs(double a)
Returns the absolute value of a double value.
static float abs(float a)
Returns the absolute value of a float value.
....
static double exp(double a)
Returns Euler's number e raised to the power of a double value.
....
static doublepow(double a, double b)
Returns the value of the first argument raised to the power of the second argument.
Empréstimos em Biblioteca
Imagine um sistema para modelar a utilização
de uma biblioteca, no que diz respeito ao
empréstimo e devolução de livros.
Considere que as entidades envolvidas neste sistema são
livros e usuários.
Os usuários pegam os livros emprestados, desde que
estejam disponíveis, e devem devolvê-los no prazo de 5 dias.
Utilize o modelo Data para gerenciar as datas. Pode ser
necessário acrescentar algum serviço ao modelo Data.
Empréstimos em Biblioteca
Quais são os componentes de cada entidade?
Qual é o comportamento de cada entidade?
Escreva modelos para cada entidade.
Escreva classes para cada entidade, e compile.
Escreva a classe Biblioteca, usuária das classes
implementadas acima, compile e teste.
Gere a documentação automática usando o javadoc.
Download