1. A classe a seguir representa uma modelagem bastante simples de uma conta corrente:
Defina a classe ContaCorrenteLanc
que extende ContaCorrente
para incluir
uma lista de lançamentos (uma instância de ArrayList\<String\>
). Essa
classe deve redefinir os métodos deposita
e retira
de ContaCorrente
para
adicionar as strings “DEPÓSITO DE n” ou “RETIRADA DE n” na lista de
lançamentos a cada depósito ou retirada, respectivamente, onde $n$ é o
valor depositado ou retirado.
Redefina o método String toString()
na classe ContaCorrenteLanc
para retornar
um extrato de todos os lançamentos, com um lançamento por linha e o saldo no final:
2. A classe JTable
é uma classe padrão de Java que mostra uma tabela na tela (como uma planilha).
Os dados que preenchem uma JTable
são fornecidos por uma implementação da interface TableModel
,
o modelo da tabela. Essa interface tem vários métodos que muitas implementações de TableModel
provavelmente implementariam de maneira idêntica, então a biblioteca de classes Java também fornece
AbstractTableModel
, uma classe abstrata que implementa TableModel
facilitando o trabalho de
definir esses modelos.
Ao invés de implementar TableModel
e implementar todos os seus métodos, uma classe pode herdar de
AbstractTableModel
e implementar apenas os seguintes métodos:
Defina uma classe TabelaContas
que herda de AbstractTableModel
e mostra uma tabela a partir de uma
lista de contas (instâncias de ContaCorrentLanc
do exercício 1). As colunas da tabela devem ser “Número”, “Correntista”,
“#Lanc” (quantos lançamentos essa conta tem) e “Saldo”. Teste essa classe com o seguinte programa:
3. A classe Racional
abaixo representa números racionais:
Implemente métodos boolean equals(Object outro)
e int hashCode()
na classe Racional
,
de modo que dois números racionais sejam iguais se ambos podem ser simplificados para
o mesmo numerador e denominador (por exemplo, 3/6 e 4/8 são iguais pois ambos podem ser
simplificados para 1/2). Para simplificar um racional, divida numerador e denominador pelo
MDC desses dois números.
Executar o código a seguir no scrapbook deve imprimir “2”:
Use o formulário abaixo para enviar o Laboratório 8. O prazo para envio é segunda-feira, dia 21/01/2013.
Última Atualização: 2016-05-18 10:58