Escolar Documentos
Profissional Documentos
Cultura Documentos
Java Basico Modulo 01
Java Basico Modulo 01
www.t2ti.com
1
www.t2ti.com
0
Mdulo
01
Histrico
janela de James @osling)
Introduo ao
Java
" linguagem de programao Java foi criada em 1881 por James @osling! ela iniciou'se como parte do projeto @reen da Sun 3icrosAstems) <nicialmente a linguagem iria c amar'se Oa7 =Carval o? em referncia a +rvore que era vis(vel pela " mudana de nome ocorreu pois j+ e*istia uma linguagem de programao com este nome! ento a linguagem foi rebati,ada para Java) O termo Java # utili,ado! geralmente! quando nos referimos a: Binguagem de programao orientada a objetosC "mbiente de desenvolvimento composto pelo compilador! interpretador! gerador de documentao e etc)C
"mbiente de e*ecuo que pode ser praticamente qualquer m+quina que possua Java Runtime Environment =JD1? instaladoC
" linguagem de programao Java # uma linguagem de alto'n(vel com as seguintes caracter(sticas: Simples: O aprendi,ado da linguagem de programao Java pode ser feito em um curto per(odo de tempoC Orientada a objetos: %esde o in(cio do seu desenvolvimento esta linguagem foi projetada para ser orientada a objetosC Familiar: " linguagem Java # muito familiar para os programadores CECFF C Robusta: 1la foi pensada para o desenvolvimento de soft/ares confi+veis!
www.t2ti.com
9
"!#uina $irtual Java % J$" " m+quina virtual java =JH3? # uma m+quina imagin+ria que emula uma aplicao em uma m+quina real) I a JH3 que permite a portabilidade do cdigo Java! isto ocorre porque todo cdigo Java # compilada para um formato intermedi+rio! bAtecode! este formato # ento interpretado pela JH3) 1*istem diversas JH3s cada uma delas destinada a um tipo de sistema operacional =6indo/s! Binu*! 3ac e etc)?! desta forma sendo o cdigo da aplicao Java! bAtecode! um cdigo interpretado pela JH3! podemos desenvolver uma aplicao sem nos preocuparmos onde ela ser+ e*ecutada pois sabemos que e*istindo a JH3 instalada nosso cdigo ser+ e*ecut+vel) Coletor de &i'o ( )arbage Collection 3uitas linguagens de programao nos permitem alocar espao na memria em tempo de e*ecuo! uma ve, encerrado o programa deve liberar este espao para que outras aplicaGes possam utili,+'lo) 1m muitas das linguagens de programao! inclusive C e CFF! a responsabilidade pela liberao do espao que no mais ser+ utili,ado # do programador! no entanto! nem sempre # f+cil gerenciar o que est+ e o que no est+ sendo utili,ado! a m+ gerncia da memria ocasiona muitas ve,es o estouro de pil a =stac7 overflo/? entre outros problemas) 5a linguagem de programao Java a responsabilidade pela gerncia da aver uma maneira de
www.t2ti.com
J
*+ Criao do cdigo fonte =$rograma)java?C ,+ Compilao do cdigo fonte e gerao do bAtecode =$rograma)class?C -+ <nterpretao do bAtecode pela m+quina virtualC .+ Converso do bAtecode em linguagem de m+quina) Hotspot ;otspot # a m+quina virtual Java! ela prov algumas funcionalidades muito importantes) "o contr+rio de outras aplicaGes! que so compiladas diretamente para cdigo da m+quina em que sero e*ecutadas! em Java estas somente so transformadas em cdigo de m+quina em tempo de e*ecuo quando necess+rio) 5o princ(pio esta abordagem trou*e problemas de sobrecarga e lentido dos sistemas! no entanto! a JH3 vem se aprimorando e! em muitas situaGes! as aplicaGes Java tem desempen o similar as aplicaGes que so previamente compiladas) 1ste desempen o vem mel orando muito devido a otimi,ao que a m+quina virtual consegue fa,er a medida que o cdigo # e*ecutado) $erceba que quando programamos em C! por e*emplo! o cdigo fonte # transformado em cdigo de m+quina imediatamente)
www.t2ti.com
>
www.t2ti.com
N
javadoc: @erador de documentaoC jar: &erramenta que comprime! lista e e*pandeC appletvie>er: $ermite a e*ecuo e debug de applets sem bro/serC javap: $ermite ler a interface p.blica das classesC e'tc?ec@: %etecta conflitos em arquivos Jar)
Objeto2 1m tempo de e*ecuo! quando a JH3 encontra a palavra reservada ne> # criada uma instKncia da classe apropriadaC Estado2 I definido pelo conjunto de atributos de uma classe! isto #! cada instKncia da classe possuir+ um estado independente dos demais objetos) Comportamento2 So os m#todos da classe! comportamento # aquilo que uma classe fa, =algoritmos?! muitas ve,es! um determinado comportamento =m#todo? muda o estado do objeto! isto #! aps a e*ecuo do m#todo um ou mais atributos mudaram de valorC
www.t2ti.com
P
1*emplos:
Fdenti=icadores v!lidos
Rcodigo Qturma QQR>"
Fdenti=icadores inv!lidos
>ident 'idade Svalor
Conveno de nomenclatura da SGE2 So recomendaGes da ST5 para nomenclatura de classes! m#todos e vari+veis) Seu programa ir+ funcionar mesmo que voc no siga estas convenGes) <) Classes e interfaces: " primeira letra deve ser mai.scula e! caso o nome seja formado por mais de uma palavra! as demais palavras devem ter sua primeira letra mai.scula tamb#m =camelCase?C <<) 3#todos: " primeira letra deve ser min.scula e aps devemos aplicar o camelCaseC <<<)Hari+veis: %a mesma forma que m#todosC <H) Constantes: -odas as letras do nome devem ser mai.sculas e caso seja formada por mais de uma palavra separada por underscore)
www.t2ti.com
U
Classes
Carro CursoJava<niciante ;otel
"Btodos
desligar iniciar3odulo
$ari!veis
motor quantidade3odulos
Constantes
CO32TS-<H1B 5O31RCTDSO -"V"RS1DH<CO
reservarSuite3aster nomeDeservaSuite
Conveno JavaHeans2 Dequisitos para que os nomes atendam a especificao para Java2eans) <) Se o atributo no for um booleano o m#todo getter =utili,ado para obter a vari+vel? deve iniciar por LgetMC <) Se o atributo for um booleano o m#todo getter pode iniciar por LgetM ou LisMC <<) O m#todo setter =atribuio? da propriedade sempre deve iniciar por LsetMC <<<)O restante do nome deve ser o nome do atributo concatenado ao prefi*o =is! get ou set? em letra mai.sculaC <H) O m#todo setter e getter sempre devem ser p.blicos)
1*emplos:
Fnstalao do J/0
" seguir veremos os passos necess+rios para a instalao do J%4 no 6indo/s por#m! antes de iniciarmos! vamos dar uma ol ada nas vari+veis de ambiente que devem ser atuali,adas e criadas quando instalamos o J%4:
JA$AIHO"E: <ndica o diretrio onde foi instalado o J%4! muito utili,ado por frame/or7s e por outros programas para locali,ar o J%4C
www.t2ti.com
8
A<H:
<dentifica
local
onde
encontram'se
as
ferramentas
de
desenvolvimento =compilador! interpretador! gerador de documentao e etc)?! devemos adicionar o diretrio J"H"R;O31WbinC C&ASS A<H: <dentifica diretrio onde o ClassBoader pode encontrar classes que so utili,adas pela sua aplicao)
Jindo>s &aa o do/nload do J%4 no site da ST5 e e*ecute o instalador) X3uitos estudantes tm tido dificuldade para escol
o termo J%4 no seu nome! se contiver o termo JD1 # o incorreto) er o instalador) O instalador correto sempre conter+
www.t2ti.com
1Y
www.t2ti.com
11
www.t2ti.com
10
www.t2ti.com
19
7.2.%JAVA_HO !%\#i'
8+-+ Clique em O4; 9+ Clique em O0L 5+ Clique em O0+ "gora vamos testar a instalao) Clique no boto Fniciar! v+ em E'ecutar e digite cmd)
www.t2ti.com
1J
"gora vamos testar o compilador! digite javac %version! dever+ aparecer algo parecido com isto:
www.t2ti.com
1>
www.t2ti.com
1N
$ronto! temos nossa primeira aplicao Java sendo e*ecutada1) "gora vamos entender um pouco de cada trec o do cdigo digitado)
1. public class (es$e 2. ) 3. public static void mai'*+$ri'g,- parame$ros. 4. ) 5. +/s$em.out.pri'$"'*0Curso Java 1'i&ia'$e220.; 6. 3 7. 3
Bin a: *+ %eclarao da classe p.blica de nome -esteC ,+ <n(cio do corpo da classeC -+ %eclarao do m#todo main =p.blico! est+tico! sem retorno e parametri,ado?C
1 A instalao do JDK e a criao da aplicao so demonstradas no mini-curso Instalao do JDK
www.t2ti.com
1P
"Btodo main
"ntes de iniciar o m#todo main! vamos abrir um breve parnteses para introdu,ir a forma como comentamos o cdigo em Java) 2asicamente e*istem duas formas: *+ OO te*to: 1sta # a forma de comentar apenas uma lin a de cdigo ,+ OP te*to PO: 1sta declarao # utili,ada quando desejamos comentar mais de uma lin a de cdigo Hejamos a classe anterior agora com coment+rios:
44!s$e 5 o &ome'$6rio de uma "i'%a public class (es$e ) 47 !s$e 5 o &ome'$6rio de mais de uma "i'%a 74 public static void mai'*+$ri'g,- parame$ros. ) +/s$em.out.pri'$"'*0Curso Java 1'i&ia'$e220.; 3
O main # o m#todo que inicia as aplicaGes Java! quando solicitamos ao interpretador que e*ecute uma determinada classe compilada ele procura o m#todo main! se este m#todo no e*istir ir+ ser gerada uma e*ceo informando que o m#todo no foi locali,ado) " JH3 s ir+ recon ecer o m#todo main se ele possuir as seguintes caracter(sticas:
www.t2ti.com
1U
E'ercQcios
"prenda com quem tamb#m est+ aprendendo! veja e compartil e as suas respostas no nosso &rum: 1*erc(cios O 3dulo Y1 O <ntroduo ao Java *+ [ual a diferena entre JD1 e J%4\ ,+ [uais so os componentes da J%4\ -+ <nstale o J%4 na sua m+quina) .+ Crie uma classe que imprima o seguinte te*to L-erminei o mdulo 9 com um programa Java]M) ;+ Compile e e*ecute a classe desenvolvida no e*erc(cio anterior) 6+ Comente o trec o de cdigo respons+vel pela e*ecuo da impresso! compile e e*ecute) 8+ 3ude o nome do m#todo LmainM para LstartM! compile e e*ecute) O que aconteceu\ 9+ 3ude novamente o nome do m#todo LmainM! agora para L^mainM! compile e e*ecute) O que aconteceu\ 5+ [ual dos e*erc(cios! P ou U! gerou uma e*ceo durante a compilao\ 1 durante a e*ecuo\
www.t2ti.com
18