Exatidão
Curso Tecnológico de Análise e Desenvolvimento de Sistemas
INF008 – Programação Orientada a Objetos
Prof. Frederico Barboza
LISTA DE EXERCÍCIOS I
ORIENTAÇÃO A OBJETOS
1) Escreva em Java uma classe Contador, que encapsule um valor usado para contagem de itens ou eventos. A classe deve oferecer métodos que devem:
a) Zerar;
b) Incrementar;
c) Retornar o valor do contador.
2) Escreva em Java uma classe Ponto2D que represente um ponto no plano cartesiano. Além dos atributos por você identificados, a classe deve oferecer os seguintes membros:
a) Construtores sobrecarregados que permitam a inicialização do ponto: i) Por default (sem parâmetros) na origem do espaço 2D; ii) Num local indicado por dois parâmetros do tipo double
(indicando o valor de abcissa e ordenada do ponto que está sendo criado); iii) Em um local indicado por outro ponto.
b) Métodos de acesso (getter/setter) dos atributos do ponto;
c) Métodos sobrecarregados de movimentação do ponto com os mesmos parâmetros indicados para os construtores;
d) Método de comparação semântica do ponto (equals);
e) Método de representação do objeto como String;
f) Método que permita calcular a distância do ponto que recebe a mensagem, para outro ponto;
g) Método que permita a criação de um novo ponto no mesmo local do ponto que recebeu a mensagem (clone);
3) Escreva em Java uma classe NumeroComplexo, que representa um número complexo. A classe deve fornecer as seguintes operações:
a) Construtor com valores das partes inteira e fracionária;
b) Métodos getter/setter para os atributos da parte inteira e parte imaginária; c) Método somar, que recebe outro número complexo e o adiciona ao número complexo que recebeu a mensagem. (a+bi)+(c+di) =
(a+c)+(b+d)i;
d) Método subtrair, que recebe outro número complexo e o subtrai do número complexo que recebeu a mensagem. (a+bi)−(c+di) =
(a−c)+(b−d)i;
e) Método multiplicar, que