!
3! $ ) ! ' " escrito numa linguagem
de alto nível ! ! + " em linguagem máquina
$ % ! ! ) 1 " !
.
& '
() ' . ! " "
$ ! /
, 2 ' ( ' * + "
2
-
,+ " ! "% ! -
, ! $ % 3 $ !
! ,
2 ! ! ( !
$ '4 " " "5 "(
, ! ,+ 3 $ /
!
/ ! !
6
*"
"%-55 0)0( ( 5
. / " -
0)0 ! $! ! 7 ( 2
8 9 +::+,
! +; ,< # %
102( ! ! +:: ,
3 = != 0)0 % ! 334
> # ( ! 33 ( < !
! / . ? ,
? )&
!! ) ( ) %1
3
-
! #
0)0 !
$
$66( / ) "
% &
,
0)0( $66(
%
"! 7 " ,,
6 % ! ! ! ,@
) ! ! 0)0( ! ' $ $
! % ? A 23 ( $ % ! 0)0
. .
B B
O compilador não vai
gerar código executável,
! !
mas sim bytecode
(um byte é usado para
representar cada
. instrução)
-/ ' " !
4
8'$ 6
'$ 6C " ! '
! ! " ! )D
! $ / !
!
> ! ! /
! ,8
" ! (! "
! '$ !
)
3 C - C-
! " '
8 " , " C- !
'$ 68
! C-,
! % ? A 23
$ C-,
! "!
! C-
! ,
5
3 > ! E >E
! " '
9, : % "2" >E !
! 2- 2 - "
" % 2- 2 - ,
3 >E =
3 ! % 7
3 "! bytecode $ ! !
% 7
@ 1 1
'! !
; 0<
=
3 >E" ! ) % !FF1 , , !
! ! ,
>E G % !FF1 , , F1 F ? F /
,1!,
( !
-/
>($ !
- / D %
(um ficheiro de extensão *.java)
! H I
J
! ,, >($ % ! ! ,
29 , ,!
/ ' →
' " 0)0 " !
(um ficheiro de extensão *.class)
?>(,+ " 9
. ! "! $
( javac ) ! !
"!
bytecode ( java )
6
> >-
# >E
$ ) !
, ,@ / /, < ! !
$ $ % /
K ) ! 1 (
I ? 8 32( " )
" " ! ! ! " >-(
L > ! - ($
) >E,
> >-
@ >-
@ / ! !
B ! ! / !
@ 1 "! ) !
@ 1 $ ! /
-/ ! >-!
- ! hoje a IDE Java mais utilizada no mundo http://www.eclipse.org/
< http://www.netbeans.org/
7
' >,
-
Um programa em Java é um conjunto de uma ou mais classes
!#
!#"$
"$ %'% &(*)++, -/. [] .1/23
[] 0
(*4/1) 576 8)96 :, -) -'&;< = 3> ;92@?
A
A
8
3
JLK/M M%
NFO7N/P M Q'R S TVUFT
>! ! ,2
' ( "
% HelloWorld.class
@ ) ! ( !
/ ,
4H
I 5 ' ) ,
9
&
-
3 ! L ! !
: @ -! . !
)
< " @ ! $
! ! ! # M
$ " = ! % (
! !
FN NF D %
FNN NF D
FF D " %
10
2 /
! L ' $
! @ ( " @
"
/ ( (
!
<
! "' !
9#
"
-/ WX
Y %Y W M
'
% !
11
@ ! "' ! " ! ! !
$ ! !
' ( ( !
<
! "' ! -CD ( = ( O( PE
= A
/ % '/
B B
-/ Z[H\ ( ][H\ Z#^`_
!
% ) ! %
9 % % # " B
Ex ! % /
"$ % ! =
" + % @ -
! ! =
Ex a
X Fb*c
F Y" Fd e'%
2 "! % = !
! ! $
Ex
"f+ " f a Y%
/ e'Y" ( Yfhgi"$Y
! " "D = ! ! O
Ex ajk`lm3jkjn oqpn/rsqtiub
12
2#
9#
1% !
,+- A( D( N ( Q( ,
! Q ! QQ
! (
L
! % "
-/ J( R ( ( ( M ( ,
" - /
!# $ ! ! ! !
-/ !
= S +T UU
V,+W+U:( +,G* -D+: U,;;
X Y( X Y( XZ Y
40 [
5( 40 5
6 '
@ ! ) .
$ ! ! $
! / !
A sintaxe da declaraçdeclaração de variá variáveis é a seguinte:
+ n !Y n ! '!v-5$/w 0 wx 0 +, y/x ?
+ n !Y n ! '!v-5$/w 0 wx 0 +, y/xFzx 0 3, -, {, 0 ?
+ n !Y n ! '!v-5$/w 0 wx 0 +, y/x w3|?-5$w/ 0 wx 0 , yx/ w/}L?
"% ! ! . $ (
! )
! ! ! D ( $
)
Exemplos: %{-) 0 ?
%L5 0~ z|?
%{-) 03 15 0 ?
13
; ! >
&% G )
1 % !
&% G )
C! = 1 % !
c Y ; D+ ; C!
"+ T
X
f
X
f +G DV TG;
+G @
" V TGT
% C! .
V D +WTW;VGW Y % P FK TM VK
" +WTW;VGWT +
%e GW D: VVT *VG;UWTTU;*;
" : VVT *VG;UWTTU;*T
C! =
DV,W/+*V;
V
" V,W/+*V;
!' Y GW D+,T/+*V*;
" +,T/+*V*;
! ' ,
B "
- = " !
/ ! Q ::T: WU; M
B
! ! " !
+% , /
! +*
/ ! ,U-G ! (U/+*G
' H- = " ! ' "
! :- = " ! !
/ ! ' " Q V,+W+U: GUM
! Q V,+W+U: GU M
! = " !
"
! * ! !.
/ ! * QX Y
14
@ ( (
L " ! / !
A sintaxe da declaraç
declaração de constantes é a seguinte:
% )+, :/w/w/ '-/5$w wx +, y/x z=x L, -, {/, ?
0 0 0 0 0
Exemplo:
" $ !
) '
A sintaxe da instruç
instrução é a seguinte:
-5$w 0 wx 0 +, yx z
~
: '11/¾'3?
3 C! D
“toma o valor de”,
Exemplos: Ç ÆÈ ÂDÉÊ ÆFË Ç ÆÈ ÂDÉÊ 'ÆÍÌ (
! $ )
! {-) 0 z
¿3? ' Î<ÃVÏLÆ
4Â<ÃÄ<Å Æ toma valor de I 5, 1/5 0 z#: 0 { 0 |ÁÀ#: 0 { 0 }L?
3 "!
15
-/
! "
@ +% " $ !
+% @ " J" !
! "
1% ! ! ! 1%
N + 8 !
F + >
\ + C
A
D 2
% 0 z|À|?
Exemplos:
%4=z ~
Ð |¿3?
-/ ! -/! "
:8Ñ , {{ 0 11Ò ~ w/}'w}'w Ò ~ :hÓ 0 )
:8Ñ , {1) 0 ), {x , #5 0 , -'&(*)++, -/. 0 .'1'Ô Õ 23
c Y7Ñz=Ö } {/z*|V} ×3?
X f 1$z|F¿'}'Ö?
%L,Fz7×'¿¿¿'¿3?
'Ø3z
×L6 Ù ÚØh?
!' Y
zÛ6 |F} Ü/Ö?
!' Y# 1'8' )3z#& Ø ÝÑ2À7&h,Þ {23ß&Ý1/2@?
(*4/1) 576 8)96 :, -) -'&+& Ø ÝÑ2À
;·À
;·À#&h,Þ{2LÀà;ß;*À#&Ý·1/2+2@?
(*4/1) 576 8)96 :, -) -'&;D '18 ) 0
z7;·Àá '18 ) 2@?
½
½
16
!
O tipo de resultado de uma expressão aritmética
depende do tipo dos seus operandos.
2 ! ' !
' ! '$ ) @ ! "%
" " - ! !$ ! !
åæçhè → éêë*ìç → í î'ç → ï ëî ð → ñ@ï ëòç → óLë*ôåLï è
-/ sempre será possível converter um int em long ou float sem perda de
informação, mas o inverso não é verdadeiro
+% "- /! ! !
Exemplos:
%L-õ -)3z|×3?
%e#-ö/ -.
zá-õ -)h? // conversão automática
%L-õ -)3z|×3ö'? // isto não é permitido, gera um erro de compilação
%L-õ -)3z#÷@ %+øi|×ö? // agora é permitido, a conversão é explícita
-/ ! !
17
3! @'
As operações unárias envolvem apenas um operando
1% ! ! " ! "
( ! ( !
++x; x++;
--x; x--;
% J " % "
+] +] "
] " ]
~ #z Ú?
~ #z Ú?
-85ûz
ý ++ ?
-85ûzáüü'ý ?
3 3!
! ! ! $
! !
+= -= *= /= %=
Exemplo:
0 À zÖL?
⇔ 0
z 0 À=Ö?
x 0 @|
x 0 }L? x 9 |Áz=x 0 @|x 0 }L?
⇔ 0
18
3
3 ! ! ^ !
@ ! ! $ !
3 ! % / K(
7
! !
í ë*ìç # !
í ë*ìç!"!#$%&(' )#+* "-,$,$
! !
)
í .ë*ìç!"-#$+%/(' 0
! ! java.lang 4 6 5(
Math,
Math System,
System String,
String etc., ! !
3! - F2 # -F2
System # ! 1 , ( !
1 ! ! -F2
← System.in
X f 1', 5Ñ
X f
b*b*c c
YY"2
" 1 1 %% 1 1 f f Y'Y' !á
2 ! ÷ ÷ 1, 5Ñ ø99ø 8 8 ÞÞ lê
lê um
um carácter
carácter aa partir
partir do
do teclado
teclado
← System.out
b b*c c
YY2
"2" 1 1 3 3 1 1 ff %% %7
% /÷ /÷ 4 4 b
/Y 7 696 9ø 9ø 8 8 Þ Þ
* b 5 5
/Y 7
depois
depois de
de imprimir
imprimir muda
muda aa linha
linha
b*b*c c
Y
Y "
2 "
2 1 1 9 6 ff++ %% ÷//÷ 4/4/::Y7 7
Y
%
%
'
! '
!
/
/Y Y 696 ø99ø 8 8
19
3! -F2
!+ >-
0$G ^B 1
! . ! ! (
7 !
! )
% " / ! (
7 !
>- ( $
! # ! @,
%
% 0%%- L ! $ 1 !
! " ! #!
% $ - / ((
<1$ !
(
7
!+, + !!
20
!+, + !!
Funções de escrita mais usadas
m; L K ÿ _
` m; L K V_ L K
F= C /` p m; L ÿ K _ A ÿGI F= C ` q< K H
ÿ C ÿ ÿ C o
8 % ! ( ( ,
m; L K ÿ _ >A BC < þ ` m; L K n V_ L K o A C A GI F= C `
ÿ C ÿ ÿ ÿ C ÿ
! % !
m; L K ÿ _ A ÿGIþ ` m; L K n V_ L K o A C A GI F= C `
ÿ C C ÿ ÿ ÿ C ÿ
! % !
m; L K ÿ _ E =GF=
H C = ÿGI H JK ; L ÿGI F= C <` m; L K n < V_ L K o A L Km; < o >A BC <F= C `
ÿ C ÿ ÿ ÿ C ÿ
! 2 % !
#
-/ ! @ + !!
[ Q MqPO S$Mrs tvu
w W xyTyz{q|}q|G~G|W xyqyG Mr(MM < þ K < ÿ >!
vmmY
y S x S [ w( P [ Q x[ D S O [ q\7 x O \yq]@
[ S [ rU [ } u
P W u
m; L ÿ K D 3 S O P q x Q xW PO [ S [ O P@ ] u
[ r ; <=>@a K D ] u
ÿ
MqP QYP yq [ [ O@Q x\x Q x xW PO y M x O x xW [ x O xR S O xxR Q x Q TyGx\ Q
[ } ; <=>@a K D 3 S O P q x Q xW PO [ S [ O P S O RR r U Ur ] u
ÿ
; <=>
?+A <D 3 S O P q x Q xW PO@O xWT S O RR} U U }] u
BC
m; L K D @@ ] u
ÿ Cÿ
m; L K D xW PO yY[ S [ O P y [ r U ] u
ÿ
m; L K n _ U [ }] u [ W [ xR G
y [ T
y x R
x
x W [
Zx Q S P P xW PO [ S
[O P
ÿ qS MqP M O
m; L K D ] u
ÿ Cÿ
m; L ÿ K C ÿ D xW PO@O xWcy PO Q x S xq P R] u
m; L K D xW PO@O xW w @¡ MqP y[ TGy U }RxyY¢ x[ yRGx M x O S Y w [ Q xW ] u
ÿ
m; L K n >
D ¡ U } U ] u
ÿ
£
£
21
-/ ! @ + !!
-F2
Se o valor está fora do intervalo dado, então
um mensagem de erro será mostrado
import p1;
class Ex_2_5_ClasseMath extends P1App {
public static void main(String args[]) {
8 % println("abs(-30): " + Math.abs(-30) );
println("acos(0.5): " + Math.acos(0.5) );
println("asin(0.5): " + Math.asin(0.5) );
println("atan(60): " + Math.atan(60) );
a X " println("ceil(5.215): " + Math.ceil(5.215) );
! 1 , , println("ceil(-5.215): " + Math.ceil(-5.215) );
println("cos(60): " + Math.cos(60) );
- println("exp(10): " + Math.exp(10) );
1 ! println("floor(54.687): " + Math.floor(54.687) );
println("floor(-54.687): " + Math.floor(-54.687) );
$ ! println("log(2): " + Math.log(2) );
' println("max(5,7): " + Math.max(5,7) );
println("min(-3,2): " + Math.min(-3,2) );
toda a documentação sobre as funções println("pow(2,3): " + Math.pow(2,3) );
da classe Math está disponível em: println("random(): " + Math.random() );
http://java.sun.com/j2se/1.4.2/docs/ println("round(13.124): " + Math.round(13.124) );
api/java/lang/Math.html println("sin(30): " + Math.sin(30) );
println("sqrt(16): " + Math.sqrt(16) );
println("tan(45): " + Math.tan(45) );
println("toDregrees(2): " + Math.toDegrees(2) );
println("toRadians(90): " + Math.toRadians(90) );
} }
22
-/ ! _
% ! $ .
H ! % - _ /
! %
! ( LD ! $ . !
,
) ! #! - 2G _ /! $ .
" !
9 - 2G Q +,G*:V/G< /09
-/ ! _
0 " decomposição ao nível 1
L - _ % ! ^
J
" _ % G< /09 M
$ _ % ! ^ G< /09( 2G M
< % _ ^ 2G M
R
23
-/ ! _
: 0 "
! !+,NM
-/O OGO > / + !!J
2 `a J
FF '
% (^ M
FF
% Q > b ) _ % bM
FF !
^ Q +,G*:VN % M
FF #
! b
> _ ^ bA ^ M
R
R
C 3D
2
*"
"%-557 ( ( 5! 5 M 5" " 5
- .
% !FF1 , , F F ^F F1 F F /,%
-/ # . ! 27 =
*"
"%-55NNN( ( ""(! 5O* 5 L" 5 7 (
*"
. ! %
% !FF!1 ,U* , F1 F ,%
> ! 1 ,
*"
"%-557 ( ( 57 5 (
P(5! 5 % 57 5 5% M (
*"
24
. '
. " 8 ( 8 " 8 , B
! 6 ,B S- ' ( **V,
! 1
', 2 !% C, > ,8 ( +::;
25