Transcript BlueJ 1
Utilizando o ambiente
BlueJ
Clique duas vezes no ícone do BlueJ
Selecione Project... New e digite “teste” na
janela seguinte (obs: Aparece um ícone
correspondente a um readme do seu projeto.
Esqueça-o por enquanto)
Clique em New Class... e digite “Teste2”.
Será aberta uma janela mostrando o
código que o BlueJ criou para você.
Apague tudo e escreva exatamente o
seguinte:
Compile o que vc digitou anteriormente
Clique no botão <Close>
Com o botão da direita sobre a caixa “Teste2”
selecione a opção Void main...
•Também tente executar
seu prog pelo DOS, entre
no C:\BlueJ e digite BlueJ
Uma das principais características do BlueJ, que
dão a ele força como ambiente de aprendizado
é o fato de que ele não apenas executa
aplicações completas, mas também pode
interagir com objetos de qualquer classe e
executar os métodos públicos destes objetos
mesmo que a aplicação ainda não esteja
completa. Ou seja, você pode testar classes
imediatamente após elas terem sido
construídas.
Os métodos estáticos podem ser executados
sem nem mesmo criar um objeto de qualquer
classe.
Revisando objetos e classes:
Objetos
são criados a partir de classes que devem
ser primeiramente construídas em Java
Variáveis e métodos possuem um dos atributos de
escopo a seguir
Private: Visível apenas para a classe atual
Public: Visível para qualquer classe externa
Protected: Posteriormente será visto
Para
criarmos objetos devemos criar uma instância
de uma classe. Como?
Executando o construtor da classe, um método
especial que possui o mesmo nome da classe e não
tem tipo de retorno.
Instanciando objetos:
Para
instanciar objetos em Java, utliza-se o operador
new.
Digamos que tenhamos a classe pessoa e queiramos
criar dois objetos a partir dela:
Pessoa pessoa1, pessoa2;
pessoa1 = new Pessoa(“fulano”, 25, ‘M’);
pessoa2 = new Pessoa(“cicrano”,31, ‘F’);
Lembrando que o método main indica o ponto
em que se deve ter início o processamento do
programa. Normalmente alguns objetos serão
criados (instanciados) neste método.
Uma vez que se tenha objetos criados podemos
chamar qualquer método que seja public.
Exemplo de criação de classe
Vamos criar juntos uma classe bem
simples chamada Pessoa.
Esta classe terá como atributos o nome,
idade e a identificação de sexo de uma
pessoa.
Como métodos teremos um para mostrar
os dados de uma pessoa e outro para a
pessoa fazer aniversário.
Exemplo de um projeto um
pouco maior
Vejamos como se organiza um projeto um pouco maior
com mais de uma classe.
Voltando ao BlueJ
Abra o projeto People da pasta examples
Observe as classes que ele possui
Crie um objeto da classe “Staff”
Execute os métodos deste objeto, verifique a janela de
código
Execute o inspect de cada objeto para verficar o valor
dos atributos do objeto
Exercício
Crie uma classe ContaBancária que possua os
seguintes atributos:
Nome
do proprietário
Saldo
Número
da conta
Agência
Implemente para esta classe os seguintes
métodos:
Ver
saldo
Depositar
Sacar
Exibir proprietário
Exercício 2
Crie um novo programa no BlueJ
digitando o código a seguir:
Implementando polimorfismo - Sobrecarregando
um método.
Relembrando: Sobrecarga pode ser feita
criando várias cópias de um método, a distinção
entre uma e outra pode ser feita de que
maneira?
Vamos sobrecarregar o construtor para
podermos inicializar o relógio informando
somente uma hora cheia? Como faremos isso?
Agora crie uma outra sobrecarga para inicializar
o relógio informando somente hora e minuto!
Faça testes com seus 3 construtores
Para alterar a hora após a criação do relógio
crie um método acertarHora(int h, int m, int s)
para que o relógio possa ser acertado a
qualquer momento.
Crie alguns relógios e altere a hora após a
criação.
Modifique os construtores para que eles usem o
método acertarHora.
Observe que não há nenhuma consistência nos
dados da entrada. Vc pode criar um relógio com
80 horas e 200 minutos. Isto pode ser um
problema. Normalmente um construtor deve
fazer a consistência da entrada.
Altere a classe para que o construtor faça a
consistência, ou seja, se for informado um valor
errado troque por 0.
Utilizando sobrecarga altere os métodos
incrementa e decrementa para que possam
receber um valor numérico relativo a quantidade
de segundos que devem
incrementar/decrementar (no máximo 60).