Você está na página 1de 32

The BlueJ Tutorial

Verso 1.4
para BlueJ Verso 1.2.x

Michael Klling
Mrsk Insitute
University of Southern Denmark

traduzido para o portugus por Joo Luiz Barbosa (jluiz_barbosa@yahoo.com.br) em outubro/2002


mestrando no CEFET (www.dppg.cefetmg.br) e professor na FUMEC (www.fumec.br)
Copyright M. Klling
ndice

1 Prefcio 4

1.1 Sobre o BlueJ........................................................................................................4


1.2 Escopo e audincia..................................................................................................4
1.3 Copyright, licenciamento e distribuio......................................................................4
1.4 Feedback...............................................................................................................4

2 Instalao 5

2.1 Instalao no Windows............................................................................................5


2.2 Instalao no Macintosh ..........................................................................................6
2.3 Instalao no Linux/Unix e em outros sistemas............................................................6
2.4 Problemas na instalao...........................................................................................6

3 Comeando do incio editando / compilando / executando 7

3.1 Iniciando o BlueJ....................................................................................................7


3.2 Abrindo um projeto ................................................................................................8
3.3 Criando objetos......................................................................................................8
3.4 Execuo ............................................................................................................ 10
3.5 Editando uma classe.............................................................................................. 12
3.6 Compilao......................................................................................................... 12
3.7 Ajuda nos erros de compilao ................................................................................ 13

4 Fazendo um pouco mais... 14

4.1 Inspecionar.......................................................................................................... 14
4.2 Passando objetos como parmetros .......................................................................... 17

5 Criando um novo projeto 18

5.1 Criando o diretrio do projeto ................................................................................. 18


5.2 Criando as classes................................................................................................. 18
5.3 Criando as dependncias......................................................................................... 18
5.4 Removendo elementos........................................................................................... 19

6 Depurando 20

6.1 Marcando pontos de parada ..................................................................................... 20


6.2 Caminhando passo-a-passo no cdigo....................................................................... 22
6.3 Inspecionando as variveis...................................................................................... 22
6.4 Halt e terminate ................................................................................................... 23

Copyright M. Klling 2
ndice

7 Criando aplicaes stand-alone 24

8 Creating applets 26

8.1 Running an applet................................................................................................ 26


8.2 Creating an applet ................................................................................................ 27
8.3 Testing the applet................................................................................................. 27

9 Other Operations 28

9.1 Opening non-BlueJ packages in BlueJ ...................................................................... 28


9.2 Adding existing classes to your project..................................................................... 28
9.3 Calling main and other static methods...................................................................... 28
9.4 Generating documentation...................................................................................... 29
9.5 Working with libraries .......................................................................................... 29
9.6 Creating objects from library classes........................................................................ 30

10 Just the summaries 31

Copyright M. Klling 3
1 Prefcio

1.1 Sobre o BlueJ

Este tutorial uma introduo para o uso do ambiente de programao do BlueJ. BlueJ
um ambiente de desenvolvimento java projetado especificamente para o ensino em um nvel
introdutrio. BlueJ foi projetado e implementado pelas equipes das universidade Monash
University, Melbourne, Australia e The University of Southern Denmark, Odense.
Maiores informaes sobre BlueJ esto disponveis no site oficial (http://www.bluej.org).

1.2 Escopo e audincia

Este tutorial visa s pessoas que querem familiarizar-se com as potencialidades do


ambiente. Ele no explica decises de projetos usadas na construo do ambiente e nem
nas questes associadas a pesquisa desenvolvidas para ele.
Este tutorial no pretende ensinar Java. Os novatos na programao Java devem procurar
estudar a linguagem atravs de livros introdutrios ou cursos da linguagem.
Este no o manual de referncia detalhado do ambiente. Muitos detalhes so deixados de
fora a nfase est em uma introduo breve e concisa e no na cobertura completa dos
recursos.
Cada seo comea com um sumrio. Isto permite que os usurios j familiarizados com
ambientes de desenvolvimento decidir se querem ler ou saltar cada parte particular. A
seo 10 repete apenas estes sumrios visando ser uma referncia rpida.

1.3 Copyright, licenciamento e distribuio

O software BlueJ e este tutorial esto disponveis a qualquer um para qualquer tipo de
uso. O software e sua documentao podem ser distribudos livremente.
Nenhuma parte do BlueJ ou sua documentao pode ser vendida ou includa em pacotes
que sejam vendidos sem a autorizao explicita dos autores.
Os direitos de propriedade do software BlueJ so propriedades de M. Klling and J.
Rosenberg.

1.4 Feedback

muito bem vindo os comentrios, questes, correes, criticas e qualquer outro tipo de
retorno a respeito do software BlueJ ou sobre este material. Por favor, envie suas
observaes para Michael Klling (mik@mip.sdu.dk).

Copyright M. Klling 4
2 Instalao

O BlueJ distribudo em trs formatos diferentes: um para o Windows, um para o


MacOS, e um para todos os sistemas restantes. A instalao fcil e completamente
automtica.
Pr-requisitos
Para usar o BlueJ, voc deve ter o J2SE v1.3 (a.k.a. JDK 1.3) instalado ou providenciar a
instalao dele no seu sistema operacional aps a instalao do BlueJ. Se voc no tiver o
JDK instalado, voc pode fazer o download a partir do site da Sun no endereo
http://java.sun.com/j2se /. o MacOS X j possui uma verso do JDK preinstalada voc
no necessita instal-la novamente. Se voc encontrar, durante a visita aos sites de
download, as verses JRE (ambiente run-time Java) e o SDK (kit de desenvolvimento
Java), voc deve fazer o download do SDK. O JRE no suficiente para a atividade de
desenvolvimento de software.

2.1 Instalao no Windows

O programa de instalao para o Windows chamado de bluejsetup-xxx.exe, onde xxx o


nmero da verso. Por exemplo, a verso 1.2.0 do BlueJ chamada de bluejsetup-120.exe.
Voc pode ter este arquivo fazendo o download a partir do site do BlueJ
(http://www.bluej.org). Para instalar, basta executar o programa.
O programa instalador permite voc selecionar o diretrio para a instalao. Ele oferecer
tambm a opo de criar um atalho no menu iniciar e no seu desktop.
Aps o termino da instalao, voc poder encontrar o programa bluej.exe dentro do
diretrio escolhido.
Na primeira vez que o BlueJ for acionado, ele procurar o ambiente Java (JDK). Se ele
encontrar mais de um ambiente Java (por exemplo, voc tem instalado o JDK 1.3.1. e o
JDK 1.4), uma janela de dilogo aparecer para voc selecionar qual ambiente ser
utilizado. Se ele no encontrar nenhum ambiente Java, ser solicitado a voc que localize o
ambiente. Isto pode ocorrer se voc tiver o ambiente instalado e as entradas na registry no
estiverem corretas ou estiverem ausentes.
O programa de instalao tambm instala um programa chamado vmselect.exe. Usando
este programa, voc poder mais tarde mudar a opo do ambiente Java que ser utilizado
pelo BlueJ. Execute o vmselect para iniciar o BlueJ com uma verso diferente do ambiente
java.
A escolha do JDK armazenada para cada verso do BlueJ. Se voc tiver verses
diferentes do BlueJ instaladas, voc pode usar uma verso do BlueJ com o JDK 1.3.1 e
outra verso do BlueJ com a verso do JDK 1.4. Entretanto, mudar a verso do ambiente
Java para um BlueJ alterar todas as verses das instalaes do BlueJ com a mesma
verso para o mesmo usurio.

Copyright M. Klling 5
Installation

2.2 Instalao no Macintosh

O BlueJ s pode ser executa no no MacOS X.


O programa de instalao para o MacOS chamado BlueJ-xxx.sit, onde xxx o nmero da
verso. Por exemplo, a verso 1.2.0 do BlueJ chamada de bluejsetup-120.exe. Voc pode
ter este arquivo fazendo o download a partir do site do BlueJ (http://www.bluej.org). Para
instalar, basta executar o programa.
Este arquivo pode ser descompactado com o StuffIt Expander. Vrios browser
descompactaro o arquivo. Se isto no ocorrer, de um duplo-click para descompact-lo.
Aps descompact-lo, voc ter uma pasta chamada BlueJ-xxx. Movimente est pasta para
a pasta de aplicaes (ou para onde voc quiser guardar). Nenhuma operao adicional
necessria para finaliza a instalao.

2.3 Instalao no Linux/Unix e em outros sistemas

O arquivo de distribuio do software um jar executvel. Ele chamado bluej-xxx.jar,


onde xxx o nmero da verso. Por exemplo, a verso 1.2.0 do BlueJ chamada de
bluejsetup-120.exe. Voc pode ter este arquivo fazendo o download a partir do site do
BlueJ (http://www.bluej.org). Para instalar, basta executar o programa
Execute o programa de instalao atravs do comando abaixo. NOTA: Para este exemplo,
eu utilizei o arquivo bluej-120.jar voc deve utilizar o nome do arquivo que voc baixou
do site (com o nmero correto de verso).
< jdk-path>/bin/java -jar bluej-120.jar
<jdk-path> o diretrio onde o JDK est instalado.
Uma janela ser exibida, permitindo voc escolher o diretrio de instalao e a verso do
JDK que ser utilizada pelo BlueJ. Importante: O caminho de diretrio do BlueJ (isto ,
nenhum dos diretrios pai) no podem conter espaos em seus nomes.
Click em Install. Ao final, BlueJ estar instalado.

2.4 Problemas na instalao

Se voc tiver algum tipo de problema durante a instalao, verifique na Frequently Asked
Questions (FAQ) no web site do BlueJ (http://www.bluej.org/help/faq.html). Leia tambm
a seo How To Ask For Help (http://www.bluej.org/help/ask-help.html).

Copyright M. Klling 6
3 Comeando do incio editando / compilando /
executando

3.1 Iniciando o BlueJ

No Windows e no MacOS, o programa BlueJ foi instalado. Execute-o.


Em sistemas UNIX, o programa de instalao criou um script chamado bluej no diretrio
escolhido. Atravs da interface grfica, acione o script com um duplo-click. Voc tambm
pode acion-lo atravs da linha de comando. Neste caso pode ou no ser passado o nome
do projeto como parmetros.
$ bluej
ou
$ bluej examples/people

Figura 1: A janela principal do BlueJ

Copyright M. Klling 7
Comeando do incio - editando / compilando / executando

3.2 Abrindo um projeto

Sumrio: Para abrir um projeto, selecione Open no menu Project.

Projetos usando o BlueJ, como os packages no Java, so diretrios que contem os


arquivos que participam do projeto.
Aps iniciar o BlueJ, utilize o menu Projet Open para selecionar e abrir um projeto.
Alguns projetos de exemplo esto includos na distribuio padro do BlueJ dentro do
diretrio examples.
Para esta seo do tutorial, abra o projeto people. Voc pode encontr-lo dentro do
diretrio examples que est dentro do diretrio home do BlueJ. Aps ter aberto o projeto,
voc deve ver algo similar janela mostrada na figura 1. A janela pode no estar
exatamente com na figura, dependendo do seu ambiente operacional, mas as diferenas
devem ser mnimas.

3.3 Criando objetos

Sumrio: Para criar um objeto de uma classe, selecione o construtor no menu popup da
classe desejada.

Uma das caractersticas fundamentais do BlueJ que voc no executa somente a


aplicao inteira, mas voc pode tambm interagir diretamente com os objetos de qualquer
classe e executar os mtodos pblicos destes objetos. Uma execuo do BlueJ feita
geralmente criando um objeto e acionando um dos seus mtodos. Isto muito til durante
o desenvolvimento de uma aplicao voc pode testar classes individualmente logo aps
eles terem sido construdos. No h necessidade de escrever a aplicao completa para
executar parte dela.

Nota: Os mtodos estticos podem ser executados diretamente sem criar a primeira
instncia de um objeto. Um destes mtodos estticos pode ser o main, assim ns
podemos fazer a mesma coisa que uma aplicao comum em Java iniciar uma
aplicao a partir da execuo do mtodo esttico main. Ns voltaremos a este tpico
mais tarde. Primeiro, faremos outras coisas mais interessantes que no podem ser
feitas normalmente em outros ambientes Java.

Os quadrados que voc v na parte central da janela principal (nomeados Database,


Person, Staff e Student) so os cones que representam as classes envolvidas nesta
aplicao. Voc pode comear obtendo um menu com as operao aplicveis a uma classe
atravs do click com o boto direito do mouse (Macintosh: ctrl-click1 ) (Figura 2). As
operaes mostradas so as operaes de criao de objetos, uma para cada construtora
da classe, seguidas de algumas operaes disponibilizadas pelo ambiente.

1
Sempre que mencionarmos o click com boto direito neste tutorial, usurios do Macintosh devem usar o
ctrl-click.

Copyright M. Klling 8
Comeando do incio - editando / compilando / executando

Figura 2: Operaes da classe (menu popup)

Ns queremos criar um objeto Staff, para isto voc deve usar o click com o boto direito
no cone Staff (que mostrar um menu como na Figura 2). O menu mostra dois
construtores para criar o objeto Staff, um com parmetros e outro sem. Primeiro, selecione
o construtor sem parmetros. Uma janela de dilogo, como na Figura 3, aparecer.

Figura 3: Criao de objetos sem o uso de parmetros

Este dilogo pede um nome para o objeto a ser criado. Ao mesmo tempo, um nome padro
(staff_1) sugerido. Este nome padro bom para este exemplo, portanto apenas click no
boto OK. Um objeto Staff ser criado.

Copyright M. Klling 9
Comeando do incio - editando / compilando / executando

Uma vez que o objeto foi criado, ele ser colocado na bancada de objetos (Figura 4). Este
todo o processo para criar um objeto : selecione um construtor no menu popup, execute-
o e voc ter o objeto criado e visvel na bancada de objetos.

Figura 4: Um objeto na bancada de objetos

Voc pode ter observado que a classe Person recebeu uma indicao de <<abstract>> (
uma classe abstrata). Voc observar (se tentar fazer isto) que voc no consegue criar
objetos de classes abstratas (A especificao da linguagem Java define que isto no
possvel).

3.4 Execuo

Sumrio: Para executar um mtodo, selecione-o atravs do menu popup.

Agora que voc criou um objeto, voc pode executar suas operaes pblicas (em Java
chamamos operaes de mtodos). Click com o boto direito no objeto e um menu com as
operaes disponveis aparecer (Figura 5). O menu mostra os mtodos disponveis para
este objeto e duas operaes especiais fornecidas pelo ambiente (Inspect e Remove). Ns
as discutiremos mais tarde. Por agora, vamos focar nos outros mtodos.

Figura 5: o menu de um objeto

Copyright M. Klling 10
Comeando do incio - editando / compilando / executando

Voc pode ver que existem os mtodos getRoom e setRoom que atribuem e retornam o
numero da sala do membro do staff. Tente chamar getRoom. Selecione-o simplesmente no
menu do objeto e ele ser executado. Um dilogo aparecer mostrando a voc o resultado
da chamada efetuada (Figura 6). Neste caso o nome ser (unknown room) por que
ns no especificamos a sala para esta pessoa.

Figura 6: Mostra o resultado da funo

Os mtodos herdados de uma superclasse tambm esto disponveis no submenu. No alto


do menu popup do objeto, existe dois submenu, um para os mtodos herdados da classe
Object e outro para os mtodos herdados da classe Person (Figura 5). Voc pode chamar
os mtodos da classe Person (como o getName) selecionando ele no submenu. Tente isto.
Voc observar que a resposta igualmente vaga: (unknown name), porque ns no
atribumos o nome ao objeto.
Vamos especificar o nmero da sala. Isto mostrar como fazer uma chamada com
parmetros (As chamadas de getRoom e getName tiveram valor de retorno, mas no
tiveram parmetros). Acione a funo setRoom atravs da seleo no menu. Uma janela de
dilogo aparecer para obter o valor do parmetro (Figura 7).

Figura 7: Chamada de funo com passagem de parmetro

No alto, o dilogo mostra a interface do mtodo que foi acionado (incluindo os


comentrios e a assinatura). Abaixo disto est o campo para a entrada de dados onde voc
pode entrar com o parmetro. A assinatura, no topo, nos informa que o parmetro
esperado do tipo String. Entre com o valor da sala com uma String (incluindo as aspas)
no campo de teste e acione o boto OK.
Isto tudo desde que o mtodo no retorne nenhum valor, nenhum dialogo de resposta
mostrado. Chame o mtodo getRoom novamente e verifique que a sala foi realmente
alterada.
Experimente criar novos objetos e chamar alguns de seus mtodos. Tente chamar o
construtor com argumento e chame tambm outros mtodos at ficar familiarizado com
estas operaes.

Copyright M. Klling 11
Comeando do incio - editando / compilando / executando

3.5 Editando uma classe

Sumrio: Para editar o cdigo fonte de uma classe, de um duplo-click no cone da


classe.

At agora, ns utilizamos somente a interface do objeto. Agora veremos o que acontece


dentro da classe. Voc pode ver a implementao da classe selecionando Open Editor
selecionando no popup de operaes da classe. (Lembre-se: click com o boto direito no
cone da classe mostra as operaes da classe). Um duplo-click no cone da classe um
atalho para a funo de edio. O editor no ser descrito em detalhes neste tutorial, mas
ele de fcil uso. Os detalhes do editor sero tratados em outro material. Agora abra a
implementao da classe Staff. Encontre a implementao do mtodo getRoom. Ele
retorna, como o prprio nome sugere, o nmero da sala da pessoa membro do staff.
Vamos tentar mudar o mtodo. Adicione o prefixo room no retorno da funo (para
que o mtodo retorne room M.3.18 ao invs de M.3.18). Ns podemos fazer isto
mudando a linha
return room;
para
return "room " + room;
BlueJ possui suporte integral ao Java, portanto no existe nada de especial em como
implementar suas classe.

3.6 Compilao

Sumrio: Para compilar uma classe, click no boto Compile no editor de texto. Para
compilar um projeto, click no boto Compile na janela de visualizao do projeto.

Aps inserir o texto (antes que qualquer outra coisa), verifique a janela de projeto (a janela
principal). Voc observar que o cone da classe Staff foi alterado: Ele est com uma lista
agora. Esta lista no cone sinaliza que a classe ainda no foi compilada desde a ultima
alterao. Retorne para o editor de cdigo fonte.
Nota: Voc pode querer saber porque os cones das classes no estavam com a lista
quando o projeto foi aberto a primeira vez. Isto ocorreu porque as classes j tinham
sido compiladas anteriormente. Normalmente os projetos distribudos com o BlueJ
no so previamente compilados, portanto voc deve encontrar a partir de agora
vrios cones de classes com listas.
Na toolbar, no topo do editor de cdigo fonte, existem alguns botes que corresponde as
funes mais utilizadas. Uma delas o Compile. Esta funo permite compilar a classe
diretamente. Click no boto Compile. Se voc no cometeu nenhum erro, uma mensagem
ser mostrada na rea na parte de baixo da janela do editor informando que a classe foi
compilada com sucesso. Se voc cometeu algum erro de sintaxe, a linha de erro ser
destacada e uma mensagem com a descrio do erro ser mostrada na rea de informao.
(Se a sua primeira compilao ocorreu com sucesso, tente introduzir algum erro de sintaxe
agora como a ausncia de um ponto-e-vrgula e compile novamente para voc como os
erros de sintaxe so indicados).
Aps voc ter compilado a classe com sucesso, feche o editor.
Nota: No necessrio salvar explicitamente o cdigo fonte de sua classe. Os cdigos
fontes so automaticamente salvos no momento mais apropriado (por exemplo,

Copyright M. Klling 12
Comeando do incio - editando / compilando / executando

quando o editor fechado ou quando uma classe compilada). Voc, se quiser,


pode explicitamente salvar (existe esta funo no menu da janela do editor) seu
cdigo, mas isto s necessrio se o seu ambiente estiver instvel e voc estiver
preocupado com perder parte do trabalho.
A toolbar da janela do projeto tambm possui o boto Compile. Este boto aciona a
compilao de todas as classes do projeto (na verdade, ele determina quais as classes
precisam ser recompiladas e recompila-as na ordem correta). Tente fazer isto mudando
duas ou mais classes (de modo a ver duas ou mais classes com as listas no diagrama de
classes) e ento acione o boto Compile. Se algum erro for detectado em uma das classes
compiladas, o editor ser aberto e a localizao do erro ser indicada.
Voc pode observar que a bancada de objetos est vazia outra vez. Os objetos sero
sempre removidos quando a sua classe for recompilada.

3.7 Ajuda nos erros de compilao

Sumrio: Para obter ajuda com as mensagens de erro durante a compilao, click no
sinal de interrogao que est prximo da mensagem de erro.

Muito freqentemente, alunos iniciantes tm dificuldade de compreender as mensagens de


erro de compilao. O BlueJ tentar prover alguma ajuda. Abra o editor novamente,
introduza um erro no cdigo fonte e compile. Uma mensagem de erro dever aparecer na
rea de informao. No lado direito da rea de informao aparecer uma exclamao, se
voc clicar neste cone voc obter mais informaes sobre o tipo de erro descrito (Figura
8).

Figura 8: Um erro de compilao e o boto de H e l p

Neste estgio, os textos de ajuda ainda no esto disponveis para todas as mensagens de
erro. Muitos deles ainda devem ser escritos. Apesar disto vale a pena tentar pois muitos j
foram cadastrados. Os restantes sero disponibilizados nas verses futuras do BlueJ.

Copyright M. Klling 13
4 Fazendo um pouco mais...

Nesta seo, ns investigaremos mais algumas coisas que voc pode fazer com o
ambiente. Coisas que no so essenciais, mas so comumente usadas.

4.1 Inspecionar

Sumrio: inspecionar objetos permite um nvel de depurao atravs da verificao dos


estados internos do objeto.

Quando voc executou mtodos de um objeto, voc pode ter observado que a operao
Inspect estava disponvel junto com os mtodos definidos pelo usurio(Figura 5). Esta
operao permite verificar os estado das variveis de instncia (fields) de um objeto.
Tente criar um objeto com alguns valores definidos pelo usurio (por exemplo, um objeto
Staff com parmetros para o mtodo construtor). Selecione ento o Inspect no menu do
objeto. Um dilogo mostra os campos do objeto, seus tipos e seus valores (Figura 9).

Figura 9: Dialogo de inspeo

Inspeo til por ser uma forma rpida de verificar se uma mutator operation (uma
operao de mudana de estado do objeto) foi executada corretamente. Assim, a inspeo
uma ferramenta de verificar e eliminar erros simples.
No exemplo do objeto Staff, todos os atributos so de tipos simples (no so objetos e
nem Strings). O valor destes tipos pode ser mostrado diretamente. Voc pode
imediatamente ver se o construtor fez ou no as atribuies corretamente.
Nos casos mais complexos, os valores dos campos podem ser referencias para objetos
definidos pelo usurio. Para ver um exemplo, ns vamos usar um outro projeto. Abra o
projeto chamado people2, que est includo na distribuio padro do BlueJ. O people2
pode ser visto na Figura 10. Como voc pode ver, este segundo exemplo possui uma

Copyright M. Klling 14
Fazendo um pouco mais...

classe Address que no existia no projeto anterior. Um dos campos da classe Person um
atributo do tipo Address.

Figura 10: A janela do projeto people2

Para o nosso prximo teste inspecionar o valor de um objeto que atributo de outro
crie um objeto Staff e ento acione o mtodo setAddress deste objeto (voc encontrar o
mtodo no menu popup do objeto Person). Entre com o endereo. Internamente o cdigo
do objeto Staff cria um objeto da classe Address e armazena-o no atributo address.
Agora, inspecione o objeto Staff. O resultado desta inspeo est na in Figura 11. Nos
atributos do objeto Staff temos agora o address. Como voc pode ver, o valor dele
mostrado como <object reference> pois ele um objeto complexo e definido pelo usurio
e seu valor no pode ser mostrado diretamente na lista. Para examinar o endereo,
selecione o campo address na lista e click o boto Inspect na janela de dilogo. (Voc
tambm pode dar um duplo-click no campo address) Uma outra janela de inspeo ser
aberta e ela dever mostrar em detalhes o objeto Address (Figura 12).

Copyright M. Klling 15
Fazendo um pouco mais...

Figura 11: Inspeo com referencia de objeto

Figura 12: Inspeo em objetos internos

Copyright M. Klling 16
Fazendo um pouco mais...

Se o campo selecionado for pblico, em vez de clicar Inspect, voc tambm pode
selecionar o campo address e clicar no boto Get. Est operao coloca o objeto na
bancada de objetos. Estando l voc pode examin-lo e fazer chamadas aos mtodos dele.

4.2 Passando objetos como parmetros

Sumrio: Um objeto pode ser passado como um parmetro para uma chamada de
mtodo.

Objetos podem ser passados como parmetros aos mtodos de outros objetos. Vamos
tentar um exemplo disto. Crie um objeto da classe Database (Voc perceber que a classe
tem somente um constructor e sem parmetros, ou seja s acionar o construtor). O
objeto Database tem a habilidade de armazenar uma lista de pessoas. Ele possui
operaes para adicionar objetos e para mostrar os objetos guardados por ele (Na verdade,
chamar este objeto de Database um grande exagero !).
Se voc no tiver objetos do tipo Staff e Student na sua bancada de objeto, crie tambm um
de cada. Para prosseguir, voc precisa ter um objeto Database, um Staff e um Student na
sua bancada de objetos ao mesmo tempo.
Agora acione o mtodo addPerson do objeto Database. A assinatura informa que um
parmetro do tipo Person esperado. (Lembre-se: A classe Person abstrata, ento no
existe nenhum objeto que seja diretamente do tipo Person. Mas, por causa da herana, os
objetos Student e Staff podem substituir o objeto Person. Desta forma, correto passar
Student ou Staff onde Person esperado). Para passar um objeto, que voc possui na
bancada de objeto, como parmetro na chamada de mtodo, voc pode entrar com o nome
do objeto no campo para passagem de parmetro. Tambm possvel utilizar um atalho,
atravs de um click no objeto na bancada de trabalho, para obter o nome do objeto em
questo. Aps isto click no boto ok para processar a chamada do mtodo. Como ele no
retorna valor, voc no percebera o resultado imediatamente. Voc deve acionar o mtodo
listAll no objeto Database para verificar se a operao foi realmente efetuada. A operao
listAll escreve as informaes sobre as pessoas na janela de sada padro. Voc ver esta
janela aparecer automaticamente com o referido contedo.
Tente isto novamente aps ter inserido mais algumas pessoas no database.

Copyright M. Klling 17
5 Criando um novo projeto

Este captulo leva voc a um rpido passeio na atividade de criar e configurar um novo
projeto.

5.1 Criando o diretrio do projeto

Sumrio: Para criar um projeto, selecione New... no menu Project.

Para criar um novo projeto, selecione Project New... no menu do BlueJ. Um dilogo de
seleo de arquivo ser aberto para voc especificar o nome e a localizao do novo
projeto. Tente fazer isto. Voc pode escolher qualquer nome para o seu projeto. Aps voc
clicar no boto OK, um novo diretrio ser criado com o nome que voc especificou e a
janela principal mostrara o novo, e vazio, projeto.

5.2 Criando as classes

Sumrio: Para criar uma nova classe, click no boto New Class e especifique o nome da
classe.

Voc pode criar suas classes clicando no boto New Class na barra de ferramentas. Voc
dever preencher o campo com o nome da classe este nome deve ser um nome vlido
para uma classe em Java.
Durante a criao da classe, voc pode escolher entre quatro tipos de classes: abstrata,
interface, applet ou padro. Esta escolha determina qual o template ser utilizado para criar
sua classe. Voc pode alterar esta definio atravs da edio do cdigo fonte (por
exemplo, adicionando a palavra abstract no seu cdigo fonte).
Aps criar uma classe, ela passa a ser representada por um cone no diagrama. Se ela no
for uma classe padro, o tipo (interface, abstract, ou applet) indicado no cone. Quando
voc abre um editor para uma nova classe voc observar que um template com a sua
classe foi criado este um bom inicio para comear o trabalho. O cdigo criado est
sintaticamente correto. Ele pode ser compilado (apesar de no fazer nada). Tente criar
algumas classes e compil-las.

5.3 Criando as dependncias

Sumrio: Para criar uma seta de dependncia, click no boto com a seta e araste-a para
o diagrama, ou simplesmente codifique o que ela representa no editor de cdigo.

O diagrama de classes mostra as dependncias entre as classes na forma de setas.


Relaes de herana (extends ou implements) so mostrados como setas (em
triangulo); relaes do tipo uses so mostradas como setas simples.

Copyright M. Klling 18
Depurando

Voc pode adicionar as dependncias de forma grfica (diretamente no diagrama) ou de


forma textual no cdigo fonte. Se voc adicionar a seta no diagrama, o cdigo
automaticamente atualizado; se voc adicionar a dependncia no cdigo, o diagrama
tambm ser atualizado.
Para adicionar uma seta no diagrama, click no boto apropriado (setas duplas para
extends ou implements, seta simples para uses) e arraste a seta de uma classe
para a outra classe.
Adicionando uma seta de herana provoca a insero da definio de extends ou
implements na definio do cdigo fonte da classe (dependendo de qual tipo o
cdigo - classe ou interface).
Adicionar uma seta do tipo uses no altera imediatamente o cdigo fonte (a menos que
o alvo seja uma classe de um outro pacote. Neste caso gerado um comando importe, mas
ns no veremos isto nos nossos exemplos). Ter uma seta do tipo uses no diagrama
apontando para uma classe que no possui o cdigo fonte correspondente gerar uma
mensagem de aviso indicando que a relao do tipo uses foi declarada mas nunca foi
usada.
Adicionar a seta no cdigo fonte muito simples: basta digitar o cdigo que voc
normalmente escreveria. Assim que a classe for salva, o diagrama ser atualizado (lembre-
se sempre: fechando o editor sua classe ser salva).

5.4 Removendo elementos

Sumrio: Para remover uma classe, selecione a funo remover no menu popup da
prpria classe. Para remover uma seta, selecione remove no menu Edit e click na seta a
ser removida..

Para remover uma classe do diagrama, selecione a classe e escolha Remove Class no menu
Edit. Voc tambm pode selecionar Remove no menu popup da classe em questo. Para
remover a seta, selecione Remove Arrow no menu a ento selecione a seta que voc deseja
remover.

Copyright M. Klling 19
Depurando

6 Depurando

Esta seo introduz um dos aspectos mais importantes a funcionalidade de depurao


no BlueJ. Nas conversas entre os professores de computao, ns sempre escutamos que
usar os depuradores no primeiro ano de ensino da computao seria muito bom, mas
normalmente no temos tempo suficiente introduzir o assunto. Os estudantes esforam-se
com o editor, como a compilao e com a execuo; Normalmente no temos tempo para
introduzir mais uma ferramenta e com complexidade.
Por este motivo decidimos criar um depurador o mais simples possvel. A meta foi ter um
depurador que pudesse ser explicado em cerca de 15 minuto, e que os estudantes
pudessem utiliz-lo sem muitas outras instrues. Vamos ver se tivemos sucesso.
Primeiramente, nos reduzimos as tradicionais funcionalidades dos depuradores em trs
diferentes tarefas :
Marcar pontos de parada no cdigo
Caminhar passo-a-passo no cdigo
Verificar os valores das variveis
Desta forma, cada uma das trs tarefas so muito simples. Nos vamos testar cada uma
delas.
Para iniciar, abra o projeto debugdemo, ele est includo no diretrio examples da
distribuio padro. Este projeto contem algumas classes com o propsito de
demonstramos como a funcionalidade de depurao Este exemplo no faz muito
sentido em nenhum outro contexto.

6.1 Marcando pontos de parada

Sumrio: Para marcar um ponto de parada, click na rea de breakpoint, parte esquerda
do editor de texto.
Ter um ponto de parada marcado permite a voc interromper a execuo do programa em
uma certa linha de cdigo. Quando a execuo interrompida, voc pode investigar o
estado de seus objetos. Isto ajuda muito na compreenso do que est acontecendo no seu
cdigo fonte.
No editor de texto, no lado esquerdo do texto, existe a rea de marcao de breakpoint
(Figura 13). Voc pode criar um breakpoint atravs de um simples click nela. Um pequeno
sinal de stop aparecer indicando o breakpoint. Tente fazer isto agora. Abra a classe
Demo, procure pelo mtodo loop, e marce um breakpoint em alguma linha dentro do loop
for. O sinal deve aparecer no seu editor de cdigo.

Copyright M. Klling 20
Depurando

Figura 13: Um ponto de parada - breakpoint

Quando a linha de cdigo associada ao breakpoint for ser executada, a execuo ser
paralisada. Vamos tentar isto agora.
Crie um objeto da classe Demo e chame o mtodo loop com um parmetro, por exemplo
10. Quando a linha que contem o breakpoint estiver para ser executada, a janela do editor
ser mostrada, mostrando a linha de cdigo corrente, e a janela do depurador tambm ser
mostrada. Isto ser parecido com o que mostrado na Figura 14.

Figura 14: A janela do depurador

A linha em destaque no editor mostra qual linha ser executada a seguir (a execuo
parada antes da linha ser executada).

Copyright M. Klling 21
Depurando

6.2 Caminhando passo-a-passo no cdigo

Sumrio: Para um passo simples no seu cdigo, use os botes Step e Step Into no
depurador.

Neste momento nos temos o cdigo paralisado de sua execuo (que nos convence
realmente que o mtodo foi executado at o ponto que tnhamos marcado), e ns podemos
andar em passos-simples (single-step) pelo cdigo e ver o progresso da execuo do
cdigo. Para isto, click repetidamente no boto Step na janela do depurador. Voc deve ver
que a marca no editor est movimentando (a marca move atravs das linhas que vo sendo
executadas). Toda vez que voc clica no boto Step, uma linha de cdigo executada e a
execuo paralisada novamente. Perceba tambm que os valores das variveis mostradas
na janela do depurador mudam (por exemplo, o valor da varivel sum). Assim, voc pode
executar passo-a-passo o cdigo e ver o que acontece. Quando voc j estiver satisfeito,
voc pode remover o breakpoint clicando no cone. Para continuar a execuo, click no
boto Continue e a execuo continuar normalmente.
Vamos tentar novamente com outro mtodo. Marque o breakpoint na linha abaixo da
classe Demo, mtodo carTest()
places = myCar.seats();
Acione o mtodo. Quando o breakpoint for encontrado, voc estar no momento antes da
chamada do mtodo seats() da classe Car. Com um click em Step, voc ter a linha
executada sem entrar no detalhe do mtodo. Vamos tentar agora o Step Into. Se voc
acionar o step into, voc entrar no detalhe da execuo do mtodo e poder executar linha
a linha (diferente do passo-simples). Neste caso, voc ver a execuo do mtodo seats()
de dentro da classe Car. Voc poder passear pelo mtodo at que voc encontre o
comando end e retorne para o mtodo chamador. Perceba como a janela do depurador se
altera.
Step e Step Into comportam-se da mesma forma se a linha corrente no contem uma
chamada de mtodo.

6.3 Inspecionando as variveis

Sumrio: Inspecionar variveis facil Elas so automaticamente mostradas no


depurador.

Quando voc depura erros no seu cdigo, importante poder inspecionar o estado de seus
objetos (variveis locais e variveis da instncia).
Fazer isto trivial a maior parte disto voce j viu. Voc no necessita de comandos
especiais para inspecionar as variveis; variveis estticas, variveis de instancia de um
objeto corrente e variveis locais de um mtodo corrente so sempre automaticamente
mostradas e atualizadas.
Voc pode selecionar os mtodos na pilha de chamada de mtodos para ver as variveis de
outros objetos ativos ou de outros mtodos. Tente, por exemplo, um ponto de parada no
mtodo carTest() novamente. No lado esquerdo da janela do depurador, voc pode ver a
pilha de chamada dos mtodos. Ela atualmente mostra :
Car.seats
Demo.carTest

Copyright M. Klling 22
Depurando

Isto indica que Car.seats foi chamado por Demo.carTest. Voce pode selecionar
Demo.carTest na lista para inspecionar o cdigo e os valores atuais das variveis deste
mtodo.
Se voc passar pela linha que contem o comando new Car(...) voc pode observar
que o valor da varivel local myCar foi mostrado como <object reference>. Todos os
valores do tipo objeto (exceto as Strings) so mostrados desta forma. Voc pode
inspecionar os valores das variveis deste objeto atravs de um duplo-click. Fazendo desta
forma uma janela de inspeo idntica as j descritas anteriormente ser aberta (seo
4.1). No h nenhuma diferena entre a inspeo de objetos descritas aqui da inspeo
dos objetos feitas na bancada de objetos.

6.4 Halt e terminate

Sumrio: Halt e Terminate podem ser utilizados para parar uma execuo
temporariamente ou permanentemente.

s vezes um programa fica rodando por muito tempo, e voc gostaria de saber se a
execuo est sendo feita corretamente. Talvez exista um lao infinito, ou somente demora
por algum motivo. Bem, ns podemos verificar. Chame o mtodo longloop() da classe
Demo. Ele ficar rodando.
Agora nos queremos saber o que est acontecendo. Mostre a janela do depurador, se ela j
no estiver disponvel (a propsito, selecionando o smbolo de turning, que mostra que o
computador est processando, um atalho para a chamada do depurador.)
Agora selecione o boto Halt. A execuo ser interrompida como se ns tivssemos
marcado um ponto de parada. Voc pode agora passar os comandos, observar as variveis,
e verificar se est tudo dentro do esperado e eventualmente continuar executando por
mais algum tempo para completar a atividade. Voc pode simplesmente selecionar
Continue e Halt varias vezes para ver quanto rpido est sendo o processamento. Se voc
no quiser terminar esta execuo (por exemplo, voc descobriu que est no meio de um
loop infinito) voc pode simplesmente selecionar Terminate para parar a execuo que
est em andamento. O boto Terminate no deve ser usado com freqncia voc pode
deixar o software em um estado no previsto e inconsistente, portanto recomendvel que
seja usado somente como um mecanismo de emergncia.

Copyright M. Klling 23
7 Criando aplicaes stand-alone

Sumrio: Para criar aplicaes stand-alon, use o menu Project - Export...

BlueJ pode criar arquivos executveis no formato jar. Os arquivos executveis jar podem
ser executados atravs de um duplo click (por exemplo no Windows e no MacOS X), ou
atravs da linha de comando java -jar <file-name>.jar (no prompt do Unix ou
do DOS).
Nos tentaremos fazer isto com o projeto hello. Abra-o (ele est no diretrio examples).
Tenha certeza que o projeto foi compilado. Selecione o menu Project -> Export...
Ser aberto uma janela que permite a voc especificar o formato de armazenamento
(Figura 15). Escolha a opo jar file para criar um arquivo executvel do tipo jar. Para
que o executvel seja efetivo, voc deve ter criado uma classe de inicio de execuo. Esta
classe deve ter um mtodo vlido chamado main definido. (com a assinatura public
static void main(String[] args)).

Figura 15: A janela de "Export"

Em nosso exemplo, escolher a classe principal fcil; h somente uma classe. Selecione
Hello no menu popup. Se voc tiver outros projetos, selecione a classe que contm o
mtodo main que voc deseja executar.
Geralmente, voc no incluiria seus fontes em um arquivo executvel. Mas voc pode faz-
lo, se voc quiser distribuir os fontes tambm.
Selecione o boto Continue. Em seguida voc ver a janela para escolha de arquivo que
permite que voc especifique o nome do arquivo do tipo jar a ser criado. Digite hello e
selecione o boto OK. A criao do arquivo executvel do tipo jar foi completada.
Voc pode executar o arquivo jar somente se a aplicao utiliza uma interface grfica.
Nosso exemplo usa a interface baseada em texto, portanto nos temos que aciona-lo em
uma janela com prompt de comando. Agora tente executar o arquivo jar

Copyright M. Klling 24
Depurando

Abra um terminal ou uma janela de prompt de comando. Ento v ao diretrio onde voc
salvou o arquivo jar. (voc deve verificar se o diretrio contm o arquivo hello.jar).
Supondo que o java foi instalado corretamente em seu sistema, voc deve ser capaz de
realizar o seguinte comando :
java -jar hello.jar
para executar o arquivo.

Copyright M. Klling 25
8 Criando applets

8.1 Executando uma applet

Sumrio: Para executar uma applet, selecione Run Applet no menu popup da classe.

BlueJ permite criar e executar applets como as outras aplicaes. Ns inclumos um applet
no diretrio de exemplos da distribuio do BlueJ. Primeiro, Nos tentaremos executar o
applet. Abra o projeto appletdemo que est dentro do diretrio exemples.
Voce ver que este projeto possue somente uma classe; ela chamada de CaseConverter.
O cone que representa a classe foi marcado (com a tag <<applet>>) como sendo uma
applet. Aps a compilao, selecione Run Appno menu popup da classe.
Uma janela sera exibida e ele permique que voce efetue algumas escolhas (Figura 16).

Figura 16: A janela "Run Applet"

Voc ver que pode escolher entre rodar o applet em um browser ou em um visualizador
de applets (ou simplesmente gerar uma pgina web sem execut-lo). Deixe as opes com
os valores j selecionados e selecione o boto OK. Aps alguns segundos, o visualizador
applet ser exibido e mostrar o applet case converter.
O visualizador applet foi instalado junto com o seu JDK, portanto muito provvel que ele
seja da mesma verso do seu compilador Java. Isto geralmente evita os problemas que a
execuo em browsers. O seu browser pode possuir uma verso diferente de Java, e,

Copyright M. Klling 26
Creating Applets

dependendo da verso que o seu browser estiver utilizando, pode causar problemas.
Apesar disto, a maior parte dos browser deve funcionar corretamente.
Nos sistemas Microsoft Windows e MacOS, o BlueJ usa o browser default. Nos sistemas
Unix systems, o BlueJ possui em suas configuraes qual ser o browser a ser acionado.

8.2 Criando um applet

Sumrio: Para criar um applet, selecione o boto New Class e escolha o tipo da classe
como Applet.

Aps ter visto como executar uma applet, ns vamos ver como criar uma.
Crie uma nova classe do tipo Applet (voc pode selecionar o tipo na janela de criao da
classe). Compile e depois execute-a. s isto ! Isto no foi difcil, no ?
Applets (como as outras classes) so geradas com um corpo padro que contm um
cdigo bsico e vlido. Para applets, este cdigo mostra um applet simples com duas
linhas de texto. Voc pode abrir o editor de texto e editar a applet para inserir suas
prprias linhas de cdigo.
Voc ver que todos os mtodos mais comuns de uma applet j esto construdos, cada um
com um comentrio que explica o propsito do mtodo. O cdigo exemplo de construo
dos textos est no mtodo paint.

8.3 Testando um applet

Em algumas situaes pode ser util criar um objeto applet na bancada de objetos (como as
classes normais). Voc pode fazer isto o construtor mostrado no menu popup da
classe applet. Da bancada de objetos voc no pode executar uma applet na sua forma
completa, mas voc pode chamar alguns mtodos. Isto pode ser til para realizar testes
unitrios nos mtodos que voc escreveu como sendo parte da implementao da sua
applet.

Copyright M. Klling 27
9 Outras Operaes

9.1 Abrindo pacotes feitos em outro ambientes no BlueJ

Sumrio: Pacotes feitos em outros ambientes podem ser abertos no BlueJ atraves do
menu Project: Open Non BlueJ...

BlueJ permite voc abrir pacotes j existentes e que foram criados fora do ambiente do
BlueJ. Para fazer isto, selecione Project Open Non BlueJ... no menu. Selecione o diretrio
que contm os arquivos com os cdigos fonte em java e selecione o boto Open in BlueJ. O
BlueJ pedir uma confirmao que voc quer realmente abrir este diretrio.

9.2 Inserindo classes j existentes no seu projeto

Sumrio: Classes podem ser copiadas para um projeto utilizando o comando Add Class
do menu File...

Em alguns casos, voce pode precisar usar uma classe que voce j possui em um projeto
usando o BlueJ. Por exemplo, um professor pode fornecer uma classe Java aos estudantes
para que eles usem em seus projetos. Voc pode incorporar facilmente uma classe
existente em seu projeto atravs do menu Edit Add Class from File.... Isto selecionar o
cdigo fonte indicado (com a terminao do nome de arquivo em .java) para ser
importado.
Quando uma classe importada para um projeto, uma cpia feita para o diretrio
corrente do projeto. Este efeito exatamente igual a voc criar uma classe e reescrever as
linhas de cdigo.
Uma alternativa a este processo adicionar o cdigo fonte, via outra ferramenta de
organizao de arquivo, da nova classe no diretrio do projeto. A prxima vez que voc
abrir o projeto, a classe ser includa no diagrama do projeto.

9.3 Acionando o mtodo main e outros mtodos estticos

Sumrio: Mtodos estticos podem ser acionados a partir do menu popup da classe.

Abra o projeto hello a partir do diretrio examples. A nica classe no projeto (classe
Hello) contm a definio do mtodo main.
Click com o boto direito sobre a classe, e voc ver o menu popup inclue no s os
mtodos construtores da classe, ele contm tambm o mtodo esttico main. Voc pode
chamar main diretamente a partir deste menu popup (sem primeiro criar um objeto,
exatamente como a definio de um mtodo esttico).

Copyright M. Klling 28
Other operations

Todos os mtodos estticos podem ser acionados desta forma. O mtodo padro main
espera receber um array com as Strings como sendo o argumento. Voc pode passar um
array com String usando o padro de sintaxe Java para a declarao de array constantes.
Por exemplo, voc poder passar
{"one", "two", "three"}
(incluindo as chaves) para o mtodo. Tente fazer isto!
Nota: No padro java, constantes no formato array constantes no podem ser usadas
como parmetros para a chamada de mtodos. Eles podem somente ser utilizados
como inicializadores. No BlueJ, para permitir a chamada interativa de mtodos do
tpo main, ns permitiremos a passagem de constantes no formato array como
parmetro.

9.4 Gerando a documentao

Sumrio: Para gerar a documentao de um projeto, selecione Project Documentation


no menu Tools.

Voc pode gerar a documentao do seu projeto no formato padro javadoc a partir do
BlueJ. Para fazer isto, selecione no Tools - Project Documentation menu. Esta funo gerar a
documentao para todas as classes do projeto a partir dos cdigos fontes e abrir um
browser para mostrar a documentao gerada.
Voc pode tambm gerar e visualizar a documentao de uma nica classe diretamente a
partir do editor de cdigo fonte do BlueJ. Para fazer isto, abra o editor de cdigo fonte e
use o menu drop-down na barra de botes do editor. Altere a seleo de Implementation
para Interface. Isto ir mostar a documentao no padro javadoc (interface da classe) no
editor.

9.5 Trabalhando com bibliotecas

Sumrio: As classes das API padro do java podem ter sua documentao visualizada
atravs do Help - Java Standard Libraries.

Frequentemente, quando voce est escrevendo um programa em java, voce precisa utilizar a
documentao das bibliotecas padro do Java. Voc pode abrir um browser mostrando a
documentao da API do JDK atravs do menu Help - Java Standard Classes (se voce
estiver na internet).
A documentao do JDK pode tambm ser instalada e usada localmente (offline). Os
detalhes desta configurao esto explicados detalhadamente na seo de help no web site
do BlueJ.

Copyright M. Klling 29
Other operations

9.6 Criando objetos a partir da biblioteca de classes

Sumrio: Para criar objetos a partir de uma biblioteca de classes, utize o menu Tools
Use Library Class.

O BlueJ tambm oferece a funcionalidade de criar objetos de uma classe que no faz parte
do seu projeto, mas que esteja definida em uma biblioteca. Voc pode, por exemplo, criar
objetos de uma classe String ou ArrayList. Isto pode ser muito til para simulaes
simples do uso destes objetos.
Voc pode criar uma biblioteca atravs do menu Tools Use Library Class. Uma janela ser
exibida para voc entrar o nome qualificado da classe, como java.lang.String. (Perceba
que voce deve entrar com o nome complete, ou seja o nome da classe incluindo o nome
dos pacotes que contm a classe.)
O campo de entrada possui um combo-box associado para mostrar as classes utilizadas
recentemente. Uma vez que o nome da classe foi entrado, basta precionar Enter para
verificar todos os construtores e os mtodos estticos da classe entrada. Qualquer um
destes mtodos, construtores ou mtodos estticos, podem ser invocados atravs da
seleo deles na lista.
Este acionamento preceder qualquer outra chamada de mtodo ou do construtor da
classe.

Copyright M. Klling 30
10 Os sumrios

Iniciando o BlueJ
1. Para abrir um projeto, selecione Open no menu Project.
2. Para criar um objeto de uma classe, selecione o construtor no menu popup da classe
desejada.
3. Para executar um mtodo, selecione-o atravs do menu popup.
4. Para editar o cdigo fonte de uma classe, de um duplo-click no cone da classe.
5. Para compilar uma classe, click no boto Compile no editor de texto. Para compilar
um projeto, click no boto Compile na janela de visualizao do projeto.
6. Para obter ajuda com as mensagens de erro durante a compilao, click no sinal de
interrogao que est prximo da mensagem de erro.

Fazendo um pouco mais


7. inspecionar objetos permite um nvel de depurao atravs da verificao dos estados
internos do objeto.
8. Um objeto pode ser passado como um parmetro para uma chamada de mtodo.

Criando um novo projeto


9. Para criar um projeto, selecione New... no menu Project.
10. Para criar uma nova classe, click no boto New Class e especifique o nome da classe.
11. Para criar uma seta de dependncia, click no boto com a seta e araste-a para o
diagrama, ou simplesmente codifique o que ela representa no editor de cdigo.
12. Para remover uma classe, selecione a funo remover no menu popup da prpria
classe.
1 3 . Para remover uma seta, selecione remove no menu Edit e click na seta a ser
removida.

Depurando
14. Para marcar um ponto de parada, click na rea de breakpoint parte esquerda do
editor de texto.
1 5 . Para um passo simples no seu cdigo, useos botes S t e p e Step I n t o no
depurador.Inspecting variables is easy they are automatically displayed in the
debugger.
16. Inspecionar variveis facil Elas so automaticamente mostradas no depurador.
17. Halt e Terminate podem ser utilizados para parar uma execuo temporariamente ou
permanentemente.

Criando aplicaes stand-alone


18. Para criar aplicaes stand-alon, use Project - Export...

Criando applets
19. Para executar uma applet, selecione Run Applet no menu popup da classe.
20. Para criar um applet, selecione o boto New Class e escolha o tipo da classe como
Applet .

Outras Operaes

Copyright M. Klling 31
Other operations

21. Pacotes feitos em outros ambientes podem ser abertos no BlueJ atraves do menu
Project: Open Non BlueJ....
22. Classes podem ser copiadas para um projeto utilizando o comando Add Class do
menu File...
23. Mtodos estticos podem ser acionados a partir do menu popup da classe.
24. Para gerar a documentao de um projeto, selecione Project Documentation no
menu Tools.
25. As classes das API padro do java podem ter sua documentao visualizada atravs
do Help - Java Standard Libraries.
26. Para criar objetos a partir de uma biblioteca de classes, utize o menu Tools Use
Library Class.

Copyright M. Klling 32

Você também pode gostar