c
Ê
©
î Ê
Ê
c ✁
✄
✁ ✁
✁ ☎
✁ ✆
✁ ✁
ÊÊ
Daftar Isi
DaftarÊ ÊÊ
rÊapan
ralatanang DÊprlukan
ava DvlopmntÊt
avauntÊm nvÊrontmnt
tan D
Daar-Daarahaamrogramanava
rogramlloorld
ÊpData
arÊabl
prator
rcabangan
rulangan
rra
mrogramanrorÊntaÊ bjk
bjct
la
akt
ntrfac
nnrla
la avaan
nangananalahan
nangkapalahan
nanganancarartÊngkat
lontarkan cptÊon
mbuatla cptÊon
mbuatla untÊm cptÊon
lokÊnall
c ✝ ✞
✠
✞ ✞
✝ ✞
✡ ✞
☛ ✞
✞ ✝
ÊÊÊ
trÊng
Dat
alndar
c ☞✌✍ ✎
✌✌☞✌ ✏ ✌✑✌✌ ☞
×
rsiapan
××
ralatan yang Dip
rlukan
ada platÊhanava DaarÊnÊpralatanang dÊprlukan adalah
ava DvlopmntÊt vrÊkata
avauntÊm nvÊrontmnt vrÊkata tan D vrÊ kata
×
ava D
v
lopm
nt Kit
ava Dvlopmnt Êt mrupakan prangkat lunak ang dÊgunakan untuk mlakukan pro kompÊlaÊ darÊ kod ava mnjadÊ ang dapat dÊmngrtÊdan dapat dÊjalankan olhavauntÊm nvÊrontmnt
ava Dvlopmnt Êt ajÊb trÊntall pada komputr ang akan mlakukan pro pmbuatan aplÊkaÊ brbaÊ ava amun ava Dvlopmnt Êt tÊdak
ajÊb trÊntall dÊ komputr ang akan mnjalankan aplÊkaÊ ang dÊbangun mnggunakanava
×
ava Runtim
Environtm
nt
avauntÊm nvÊrontmnt mrupakan prangkat lunak ang dÊgunakan untuk mnjalankan aplÊkaÊ ang dÊbangun mnggunakan java rÊ haru ama
atau lbÊh tÊnggÊ darÊ D ang dÊgunakan untuk mmbangun aplÊkaÊ agar aplÊkaÊdapat brjalanuaÊdnganang dÊharapkan
×
tB
ans IDE
tan D mrupakan prangkat lunak ang dÊgunakan untuk mmbangun
prangkat lunak ang laÊn tan D dapat dÊgunakan untuk mmbangun
prangkat lunak brbaÊ ava tandard dÊtÊon ava ntrprÊ dÊtÊon ava
c ✒✓✔ ✕
✓✓✒✓ ✖ ✓✗✓✓ ✒
Dasar-Dasar Bahasa
mrograman
ava
×
rogram H
llo World
ada kod dÊata kÊta tlah mmbuat buah program drhana ang mnampÊlkan tulÊan "llo orld͟ pada conol rdapat bbrapa aturan dalam mmbuat program dalamavaaÊtu
ama fÊl haru ama dngan nama kla program Êal pada kod dÊata nama klana adalah lloorld maka nama fÊl haru
lloorldjava
ana bolh trdapatatu klapublÊc padabuah fÊl
la ang mnjadÊ program haru mmÊlÊkÊ mtod public static void main(String[] args)
rmÊnal padaava mnggunakan tanda# $tÊtÊk koma)
ip
Data
rdapat bbrapa tÊpdata prÊmÊtÊv ang ada dÊ avaaÊtu
è✘✙✚✚ ✘✘✛✚✚
✘✚ truatau fal ✚ ✛ araktr ✘ -- ✛ --
--
--
✘ -- ✚ --
trÊng bukanlah mrupakan tÊpdata dÊ ava trÊng mrupakanbjct amutn
trÊng mmÊlÊkÊ kunÊkan aÊtu trÊng dapat langung dÊbuat tanpa haru
c ✜✢✣ ✤
✢✢✜✢ ✥ ✢✦✢✢ ✜
ariab
l
arÊabl mrupakan uatu ang dÊgunakan untuk mnampung buah databuah varÊabl haru ada dalam buah kla atau mtodmbuatan
buah varÊabl dÊ ava trlÊhat pada koddÊbaahÊnÊ
ÊpvarÊabl dapat brupa tÊpdata atau klamÊal
!
%ntuk mnambahkan nÊlaÊkbuah varÊablmaka dapat mnggunakan tanda& $ama dngan) mÊal jÊka kÊta akan mnambahkan nÊlaÊ pada varÊabl nÊlaÊ
danpada varÊablÊndÊlaÊmaka dapat trlÊhat pada koddÊbaahÊnÊ
!
"#$$ !"%&%
tau dapat juga langungaat pmbuatanbuah varÊabl
"#$$ !"'&(
arat-arat pnamaan varÊabl adalah
arudÊaalaÊdngan huruf
Êdak bolh trdapat karaktr unÊkprtÊ ' ()dan laÊn-laÊn
Êdak bolh mngandung karaktr putÊh$paÊntrtab)
p
rator
c ✧★✩ ✪
★★✧★ ✫ ★✬★★ ✧
× prator Aritmatika
-✭✮ ✯ ✮ ✭✭✮✯✯
njumlahan ngurangan
rkalÊan
mbagÊan
Êa pmbagÊan
ontoh
"#$ ") "*
aÊl darÊkodprogram dÊata adalahbukan alÊnÊdÊkarnakan dalam
ava jÊka kÊta mlakukan opraÊ pmbagÊan dngan tÊp data Êntgr maka haÊlnapun akanÊntgrdanÊntgr tÊdak dapat mngandung nÊlaÊkoma dalam
ava hÊngga jÊka akan mlakukan prkalÊan ang mnghaÊlkan nÊlaÊ koma
maka harumnggunakan tÊpdata doublatau float
prator nugasan
-✰✱ ✲ ✱ ✰ ✰✱✲✲
mbrÊan nÊlaÊ nambahan bÊlangan
ngurangan bÊlangan
rkalÊan bÊlangan
mbagÊan bÊlangan
mrolhanÊa bagÊ
ontoh
"#$ +",
c ✳✴✵ ✶
✴✴✳✴ ✷ ✴✸✴✴ ✳
aÊl darÊopraÊ &trbut adalah alÊnÊdÊkarnakan a & ama dngan a&a dÊkarnakan ablumna adalahmakaÊtu brartÊa&
Êka akan mlakukan pnambahan atau pngurangan dngan nÊlaÊmaka dapat
dngan mudah mnggunakan karaktr untuk pnambahan atau -- untuk pnguranganmÊal
"#$ --
aka haÊlna adalah
prator mbanding
-✹✺ ✻ ✺ ✹✹✺✻✻
ama dngan ! Êdakama dngan " *bÊh darÊ ama dngan # urang darÊ ama dngan " *bÊh darÊ
# urang darÊ
aÊl darÊ opraÊ pmbandÊng adalah boolan ru jÊka opraÊ pmbandÊng trbut bnardan faljÊka opraÊpmbandÊng trbutalahmÊal
"#$""#$$
aÊl darÊ program dÊata adalah fal karna mmang tÊdak ama dngan
prator Logika
-✼✽ ✾ ✽ ✼✼✽✾✾
$$ Dan
c ✿❀❁ ❂
❀❀✿❀ ❃ ❀❄❀❀ ✿
prator logÊka dÊgunakan untuk mmbntukuatu kadaan darÊdua atau lbÊh kondÊÊ trtntu oprator logÊka bÊaana dÊgabungkan dngan oprator
pmbandÊng aÊl darÊoprator logÊka adalah boolan
aÊl opraÊlogÊka dngan mnggunakan++adalahbagaÊbrÊkut
-❅❆ ❇ % -❅❆ ❇ & '❇
(❇❅ al al
(❇❅ ru al
è❅ al al è❅ ru ru
aÊl opraÊlogÊka dngan mnggunakan,,adalahbagaÊbrÊkut
-❅ % -❅ & '
(❅ al al
(❅ ru ru
è❅ al ru è❅ ru ru
ontoh
"#$""#$$..#$$""#$$
aka haÊlna adalah tru
rcabangan
× rcabangan if
rnataan Êf mrupakan alah atu bntuk prnataan ang brguna untuk mngambÊl kputuan trhadap buah kmungkÊnan ntuk prnataan Êf brupa
/0
**010
c ❈ ❉
"#$
/""#$
Êka program dÊata dÊjalankan maka haÊlna adalah tulÊan "puluh͟ karna kondÊÊpada Êf brnÊlaÊtrujÊka kondÊÊbrnÊlaÊ alahmÊal nÊlaÊ && maka program tÊdak akan mnghaÊlkan tulÊan apa-apa
rcabangan if-ls
rcabanganÊf-l mrupakan prcabangan ang ama dngan prcabanganÊf namun mmÊlÊkÊ kondÊÊ fal artÊna jÊka kondÊÊ pada Êf tÊdak trpnuhÊ maka
prÊntah padalakan dÊjalankanntuk prnataanÊf-lbrupa
/0
**10100
**10100/
Êal
"2
/"" #$
30
Êka program dÊata dÊjalankan maka haÊlna adalah tulÊan "ukan puluh͟
halÊnÊdÊkarnakan nÊlaÊbrnÊlaÊ bukan
rcabangan if brsarang
rcabangan Êf brarang mrupakan gabungan bbrapa Êf dan dapat pula dÊgabung dnganÊf-lntuk prnataanÊf brarang adalahbaga brÊkut
/0#
c ❊ ❋
/04 ** 04 /0) ** 0)
** 10 00
Êal
"5
/6"2 "%&% /6"7 "%3% /6"5 "%8% /6" , "%9%
"%:%
Êka program dÊatadÊjalankanmaka haÊlna adalah-.
rcabangan switch-cas
rcabanganÊtch-ca mrupakan prcabanganang kondÊÊna hana dapat
mnggunakan prbandÊngan&& $ama dngan)ntuk prnataan prcabangan
Êtch-caadalahbagaÊbrÊkut
; #<
**10 0 0** 0 4<
**100 0** 0 4<
**100 0** 0 =<
c ● ❍
**100
0** 0
ada prcabanganÊtch prtamadÊprlukanbuah varÊabl tlahÊtu bada bagÊan ca dÊbandÊngkan jÊka ama maka ÊntrukÊ akan dÊjalankan ampaÊ
mnmuÊtanda brak Êal
",
; #< 4< )< =< ,< 5<
30> 0
7<
> 0
/<
090 0
Êka program dÊatadÊjalankanmaka program akan mnghaÊlkan tulÊan"ukan
arÊ *Êbur͟
rulangan
× rulangan whil
rnataan hÊl brguna untuk mlakukan pro prulangan untuk buah
kondÊÊ lama kondÊÊ trbut brnÊlaÊ bnar $tru) maka prulangan akan
tru brjalan dan trhntÊ ktÊka kondÊÊ brnÊlaÊ alah $fal) ntuk prnataanhÊlprtÊbrÊkutÊnÊ
; 0 **0
c ■ ❏
1"#
; 1?"#$
1 1++** 001
Êka program trbut dÊjalankanmaka haÊlna adalah tulÊan darÊno ampaÊ
Dan aat jumlah brnÊlaÊ maka prulangan akan trhntÊ dÊkarnakan kondÊÊbrnÊlaÊfal$/&)
rulangan do-whil
rulangan do-hÊl mrupakan prulangan ang hampÊr mÊrÊp dngan
prulangan hÊl namun prbdaanna pada prulangan do-hÊl maka mÊnÊmal ÊntrukÊ akan dÊjalankan kalÊ ntuk prnataan do-hÊl bagaÊ
brÊkut
**0 ; 0
Êal
1"#$$
1 1++**001 ; 1?"#$
Êka program trbut dÊjalankanmaka akan mnghaÊlkan kluaranartÊna
alaupun kondÊÊ alahnamun mÊnÊmalÊÊ ÊntrukÊakan dÊjalankankalÊhalÊnÊ
dÊkarnakan pro do-hÊl brbda dngan hÊl dÊmana do-hÊl prtama
mlakukanÊntrukÊbaru mngck kondÊÊ dangkanhÊlprtama mngck kondÊÊbaru mlakukanÊntrukÊ
rulangan for
c ❑ ▲
buah varÊabl dÊluar untuk mlakukan pnkondÊÊan pada prulangan for
dÊtmpatkan buah blok untuk mmbuat varÊabl dan mlakukan pro
pngkondÊÊanntuk prnataan forprtÊbrÊkut
/0 0* 0
Êal kÊta akan mnampÊlkan angka darÊ & maka dapat mnggunakan prulangan for
/"#?"#$$++
rintah brak
rÊntah brak mrupakan prÊntah ang dapat dÊgunakan untuk mnghntÊkan proprulanganmÊal jÊka kÊta mmbuat programprtÊbrÊkut
/"#?"#$$++ /"",$
0
aka program hana akan mnampÊlkan angka darÊ ampaÊ karna pada
aatÊmncapaÊ program dÊhntÊkan olh prÊntah brak
rintah continu
rÊntah contÊnu dapat dÊgunakan untuk mloncatÊ buah prulangan
makudna adalah ÊntrukÊ ang haruna dapat dÊlat hal ÊnÊ brartÊ ÊntruktÊtÊdak akan dÊjalankan Êal
/"#?"#$$++ /@4""$
c ▼ ◆
Êka program dÊata dÊjalankan maka haÊlna akan mnampÊlkan angka-angka ganjÊlajahalÊnÊdÊkarnakanaat nÊlaÊ Êmrupakan angka gnapmaka prÊntah
contÊnummbuat program tÊdak mnampÊlkan angka gnap
Array
rra mrupakan objk ang dapat dÊgunakan untuk mnÊmpan jumlah dataData ang dapat dÊtampung pada arra dapat brupa tÊp data ataupun
kla $objk)
× åndklarasikan Array
%ntuk mmbuatan varÊabl arra pun brbda dngan mmbuat varÊabl bÊaanaaÊtubagaÊbrÊkut
&&
DÊmana tÊparradapat brupa tÊpdata bÊaaprtÊ Êntchar hort atau juga kla prtÊtrÊng danang laÊnna
åmbuat Array
tlah mndklaraÊkan rra maka prlu dÊbuat arrana trlbÊh dahulu blum arratrbut dÊgunakancarana dngan mnggunakan prÊntah n
&&
&" ; &1
DÊmana jumlah arramrupakan jumlah dataang dapat dÊtampung olh arra
åmanipulasi Data dalam Array
tlah mmbuat rra maka untuk mlakukan pro manÊpulaÊ prtÊ
c ❖ P
o ndk
rtÊna data k dapat dÊak mnggunakan Êndk dan truna Dan untuk mlakukan pro manÊpulaÊ data dalam arra mnggunakan Êndk
dapat dÊgunakan dngan prÊntah
& 0
Êal
" ;,
$"4)= #"5257 4"=4)= )",5= ="4=4)
$ # 4 ) =
Array åultidimnsi
ava mndukung pmbuatan arra multÊdÊmnÊ makudna kÊta dapat
mnambahkan data arra k dalam buah arra cara pmbuatanna adalah
bagaÊbrÊkut
c ◗ ❘
mrograman B
rori
ntasi
bj
k
mrograman brorÊntaÊ objk mrupakan pmrograman ang mnjadÊkan objkbagaÊkomponn utama dalam Êtmbjk mrupakan gabungan data dan fungÊdÊmanabuah objk dÊbuat darÊ buah kla
×
bj
ct
bjk mrupakan haÊl darÊ buah kla jÊka dÊÊbaratkan bjk adalah ku
maka kla adalah ctakan kuna dÊmana ku dÊbuat mnggunakan ctakan
trbutDanbuah ctakan kudapat mmbuat bbrapa kuartÊnabuah kladapat mmbuat bbrapa objct
%ntuk mmbuat objk dalamava dÊprlukanbuah prÊntah ndÊmana cara pmbuatannaama dngan pmbuatan varÊabl
A 1 0 " ;A
Êka dalam kla ang dÊbuat objk trbut trdapat atrÊbut maka dapat dÊpanggÊl mnggunakan $tÊtÊk)
**
1 0&"
Êka dalam klatrbut mmÊlÊkÊ buah fungÊ $mtod)maka dapat dÊpanggÊl mnggunakan $tÊtÊk) dan dÊakhÊrÊdngan$)
** / 1 0B
lass
Dalam ava kla dÊdfÊnÊÊkan mnggunakan kata kuncÊ cla ontoh kla drhana adalahbagaÊbrÊkut
c ❙ ❚
ada kod dÊata kla ang tlah dÊbuat adalah kla anuÊa Dan nama mrupakan atrÊbut ang dÊmÊlÊkÊ kla anuÊa trbut ontoh pmbuatan
objk untuk klamanuÊa adalahbagaÊbrÊkut
** 1 0
C" ;C
** 1 0
":0A;A
× åtod
Dalam java trdapat dua buah mtod
ungÊmrupakan mtod ang mmÊlÊkÊnÊlaÊbalÊk jÊka mtodtrbut dÊpanggÊl cara pmbuatan buah fungÊ adalah dngan cara
mnntukan nÊlaÊbalÊknalalu mmbuat nama mtodna
rodur mrupakan mtod ang tÊdak mmÊlÊkÊ nÊlaÊ balÊk cara pmbuatan produr ama dngan fungÊnamun bdananÊlaÊbalÊkna mnggunakan kata kuncÊvoÊd
ontoh
C
**/
!
**0 0000
**
! "
c ❯ ❱
mngmbalÊkan nÊlaÊ trÊng dangkan hapuama$) mrupakan produr
karna tÊdak mngmbalÊkan nÊlaÊ
aat mmbuat buah fungÊ maka untuk mngmbalÊkan nÊlaÊna haru
mnggunakan kata kuncÊrturn dÊÊkutÊ nÊlaÊang akan dÊkmbalÊkanna %ntuk mngambÊl nÊlaÊbalÊk darÊfungÊdapat dÊlÊh at pada contohbagaÊbrÊkut
C" ;C
":0A;A
** / "!
aramtr
aramtr mrupakan dataang dapat dÊtambahkan darÊluar mtodmÊal jÊka kÊta mmbuatbuah mtoduntuk mngubah nama pada kla anuÊamaka
patÊkÊta mmrlukan nama baru untuk mnggantÊkan nama lamaolh karna
Êtu dÊprlukanbuah paramtr nama baru untuk mnggantÊkan nama trbut ontoh paramtr dapat trlÊhat pada kladÊbaahÊnÊ
C
** !3 "3
!
! "
ontoh pnggunaanna adalahbagaÊbrÊkut
C" ;C
c ❲ ❳
"!
aat kod dÊata dÊkkuÊ maka varÊabl nama akan brnÊlaÊ " ko urnÊaan
hannd͟ uaÊ dngan nama baru ang tlah tÊdambahkan lat mtod ubahama$namaaru)#
buah mtoddapat mmÊlÊkÊ atu atau lbÊh paramtruntuk mnambahkan paramtrdÊpÊahkan dngan mnggunakan tanda $koma) ontohna
C
**
93D3 "3
"3
** !3 "3
!
! "
ontoh pnggunaanna adalahbagaÊbrÊkut
C" ;C 9:0D
Kata Kunci this
c ❨ ❩
paramtr trbut untuk mngubah atrÊbut pada kla maka prubahan tÊdak
akan trjadÊ
C
9D "
"
! "
aat kÊta mnggunakan kla anuÊa dÊatapada program
C" ;C 9:0D
tlah dÊjalankan maka program trbut akan mnghaÊlkan nÊlaÊ null ang artÊna nama dan alamat objk manuÊa tÊdak brubah mnjadÊ " ko͟ dan
"ubang͟ knapa? al ÊnÊ dÊkarnakan jÊka kÊta mmbuat buah paramtr angama dngan nama atrÊbutlaluaat kÊta mmanggÊl nama atrÊbut trbut
makabnarna bukan atrÊbutang kÊta panggÊl mlaÊnkan paramtr
gar kalahan trbut tÊdak trjadÊ maka dÊprlukan kata kuncÊ thÊ ang dÊgunakan untuk mnatakan objk trbutjadÊuntuk mngubah atrÊbutang
namanaama dngan paramtr harulahbagaÊbrÊkut
C
9D "
"
c ❬ ❭
!
"
aat programblumna dÊjalankan kmbalÊmaka haÊlna tÊdak akan null lagÊ
isibilitas rivat dan ublic
ava mndukungvÊÊbÊlÊtaaÊtu
ÊÊbÊlÊta trangan
prÊvat ana dapat dÊakolh kla ÊtundÊrÊ
publÊc Dapat dÊakolhluruh kla
protctd ana dapat dÊakolh kla ÊtundÊrÊ
dan klaturunanna
è ana dapat dÊakolh kla-klaang brada padaatu pakt
ÊÊbÊlÊta prÊvat mrupakan vÊÊbÊlÊta ang dapat dÊgunakan pada atrÊbut
mtodataupun kla!unana vÊÊbÊlÊtaprÊvatadalah untuk mnmbunÊkan
atrÊbut mtod atau klatrÊbut mtod atau kla ang mnggunakan vÊÊbÊlÊtahana dapat dÊakolh objkÊtundÊrÊ
ontoh atrÊbutang mnggunakan vÊÊbÊlÊtaprÊvat
C
9D "
"
! "
c ❪ ❫
ÊtundÊrÊang bÊa mngakatrÊbut nama hÊnggaaat klalaÊn mngak
atrÊbut trbutmaka akan trjadÊrror
C" ;C 9:0D
ada kod dÊata maka akan trjadÊ rror ktÊk kla lloorld mngak
atrÊbut nama objk manuÊadÊkarnakan atrÊbut trbut brÊfat prÊvat
ÊÊbÊlÊta publÊc mrupakan vÊÊbÊlÊta ang dapat dÊtrapkan pada atrÊbut
mtoddan klaDngan vÊÊbÊlÊtapublÊcmaka atrÊbutmtodatau klaang
mmÊlÊkÊ Êfat publÊc trbut dapat dÊakolh klamanapun dan darÊpackag
manapun
ontoh pada kod blumna kÊta akan mnambah buah mtod publÊc ang brnama ambÊlama$)ang mngmbalÊkan nama mahaÊa
C
!
9D "
"
! "
Dngan dmÊkÊan untuk mngak atrÊbut nama karang kÊta dapat
mnggunakan mtodambÊlama$)
c ❴ ❵
9:0D
!
Konstruktor
ontruktor mrupakan mtod ang cara otomatÊ dÊpanggÊl ktÊka buah objk dÊpanggÊl ara mmbuat mtodkontruktor adalahnama mtodharu aa dngan nama kla dan tÊdak mngmbalÊkan nÊlaÊ balÊk dan tÊdak pula mnggunakan kuncÊvoÊd ontoh
C
C
EF1 0C;9GGGH
!
9D "
"
! "
Dngan dmÊkÊan aat mmbuat buah objk ahaÊa maka kontruktor
trbut akan otomatÊ dÊpanggÊl Êal jÊka kÊta mmbuat buah objk mahaÊa
C" ;C
aka akan mnampÊlkan tulÊan"bjkahaÊa DÊbuat!!!͟
ontruktor juga mndukun pnggunakan paramtr mÊal aat mmbuat
c ❛ ❜
C
C "
!
9D "
"
! "
Dngan bgÊtu maka aat mmbaut objk manuÊa maka kÊta haru
mnggunakan paramtr nama
C" ;C :0A;
vrloading Konstruktor
vrloadÊng mrupakan mkanÊmdÊmana kÊta dapat mmbuat lbÊh darÊ atu
buah kontruktor pada buah klaamun dngan ktntuan tÊap kontruktor haru mmÊlÊkÊ paramtr ang brbda bÊa brbda jumlah
paramtrna ataupun bÊa brbda tÊpdata paramtrna
Êal kÊta akan mngubah kla manuÊa trbut mnjadÊ mmÊlÊkÊ dua
konturktor dÊmana kontruktor prtama kÊta dapat mmbuat objk manuÊa tanpa harumnggunakan nama dan kontruktor kdua kÊta harumnggunakan
nama untuk mmbuat objk mahaÊa
C
C **
c ❝ ❞
!
9D "
"
! "
Dngan bgÊtu kÊta dapat mnggunakan dua cara untuk mmbuat objk darÊ
kla ahaÊaaÊtu tanpa paramtr dan mnggunakan paramtr nama
C#" ;C
C4 " ;C:0A;A
vrloading åtod
laÊn pada kontruktorovrloadÊng juga bÊa dÊlakukan pada mtodmÊal kÊta akan mmbuat dua buah mtod ubah mtod prtama mnggunakan
paramtr nama dan mtodkdua mnggunakan paramtr nama dan alamat
C
C **
C "
"
D "
c ❡ ❢
Dngan bgÊtu kÊta dapat mnggunakan mtod ubahuntuk mngubah nama ataupun untuk mngubah alamat
C" ;C :0
:0A;D
warisan Klas
arÊan mrupakan mkanÊmdÊmana buah kla dapat marÊÊ luruh atrÊbut atau mtod mÊlÊk kla laÊn dngan ktntuan trtntu Êal ada
buah kla rang dngan atrÊbut nama dan alamat *alu ada kla gaaÊ
dngan atrÊbut nÊpnama dan alamat
F
! "
!
& "
&
I ;
c ❣ ❤
"
!
! "
!
& "
&
ada koddÊatabÊa bandÊngkan antara kla rang dan kla gaaÊmmÊlÊkÊ
bbrapa atrÊbut dan mtod ang ama aÊtu nama alamat ubahama$)
ambÊlama$) ubahlamat$) dan ambÊllamat$) rtÊna banak trjadÊ duplÊkaÊ
kod olh karna Êtu lbÊh baÊk kla trbut dÊgabungkan mnggunakan parÊanaÊtu rang dÊturunkan mnjadÊ gaaÊ karna mua atrÊbut dan
mtod rang ada dÊ gaaÊnamun tÊdakmua atrÊbut dan mtodgaaÊ
ada dÊkla rang
%ntuk mngatakan baha kla turunan darÊkla 0kÊta dapat mnggunakan kata kuncÊ tnd Dngan bgÊtu kÊta hana prlu mngubah kla gaaÊ
mnjadÊ bagaÊbrÊkut
I ; F
! "
!
c ✐ ❥
alaupun kla gaaÊ tÊdak mmÊlÊkÊ atrÊbut dan mtod untuk nama dan alamat namun bnarna gaaÊ trbut mmÊlÊkÊna karna gaaÊ
mrupakan turunan darÊ rang hÊngga luruh Êfat darÊ rang ada pada
gaaÊ
I ; ;" ;I ;
;!:0A; ;& ;! #$#$5$)#
isibilitas protctd
blumna kÊta tlah mmbaha tntang vÊÊbÊlÊta prÊvat dan publÊc kalÊ ÊnÊ
kÊta akan mmbaha tntang vÊÊbÊlÊta protctd trÊbut mtod atau kla
ang dÊtandaÊ dngan vÊÊbÊlÊta protctd hana dapat dÊak olh kla Êtu
ndÊrÊdan turunanna Êal pada kla blumna kÊta tlah mmbuat kla rang dangaaÊ
ada kla rang vÊÊbÊlÊta untuk atrÊbut nama dan alamat adalah prÊvat
artÊna hana kla rang trbut ang dapat mngak atrÊbut trbut alaupun kla gaaÊ mrupakan turunan darÊ kla rang ttap aja kla gaaÊtÊdak dapat mngakatrÊbut nama dan alamat darÊkla rang
I ; F
! "
!
"
Êka kÊta mnggunakan kod dÊata untuk mngak atrÊbut nama darÊ kla
c ❦ ❧
namamnjadÊprotctd maka atrÊbut nama dapat dÊakolh klaturunanna
aÊtu kla gaaÊ
F
! "
!
& "
&
I ; F
! "
!
**
" "
× vrriding
vrrÊdÊng tÊdak ama dngan ovrloadÊng ovrrÊdÊng mrupakan mkanÊm dÊmanabuah mtoddapat dÊdklaraÊkan ulang pada klaturunanna
Êal ada dua kla aÊtu aÊ dan Daa pada kla baÊ tbut trdapat mtodlarÊ$)ang mmrÊntahkan untuk larÊ
c ♠ ♥
0 3<
tlahÊtu klaDaa mrupakan klaturunan darÊklaaÊ
9 ; 3
tlahÊtu jÊka kÊta coba buatbuah objk klaDaa dan mnuruhna larÊ
9 ; ;" ;9 ;
;
aka haÊlna adalah "Êdak Êa $͟ artÊna mtod larÊ$) ang dÊpanggÊl
bnarna mÊlÊk kla aÊ ang patÊna tÊdak dapat brlarÊ karang jÊka dÊanggap kla Daa dapat brlarÊmaka kÊta haru mnggubah mtodlarÊ$)
trbut agar dapat brlarÊ carana adalah dngan mlakukan pndklaraÊan ulang$ovrrÊdÊng) arana adalah dngan mmbuat mtod angama dngan
mtod ang dÊarÊÊna
9 ; 3
>GGGG
aka jÊka program t blumna dÊjalankan kmbalÊ maka klauaranna patÊ "*arÊ!!!!͟artÊna mtodlarÊ$) mÊlÊk klaDaaang dÊpanggÊl
××Kata Kunci supr
ata kuncÊ upr mrupakan kata kuncÊang dÊgunakan untuk mngak kla
parnt $ang dÊturunkan) mÊal jÊka kÊta mnggunakan kata kuncÊ upr pada
klaDaa artÊnaupr trbut mrujuk pada klaaÊ
c ♦ ♣
3
** 0 03
>GGGG
laÊnÊtukata kuncÊ upr juga dapat dÊgunakan untuk mngak kontruktor mÊlÊk klaang dÊarÊkan
3
3
3 "
!
3 3
3
3 D
"
J
c q r
×Kata Kunci final
ata kuncÊ fÊnal mrupakan kata kuncÊ ang dapat dÊgunakan untuk mnandaÊ
baha uatu atrÊbutmtod atau kla udah fÊnal artÊna tÊdak dapat dÊubah lagÊ
s tt
trÊbut tÊdak dapat dÊdklaraÊkan lagÊ
t arÊabl tÊdak dapat dÊdklaraÊkan lagÊ
todtÊdak dapat dÊdklaraÊkan$ovrrÊdÊng) lagÊ
latÊdak dapat dÊturunkan
Êka kÊta mnambahkan buah atrÊbut dngan kata kuncÊ fÊnal maka atrÊbut trbut harulangung dÊdklaraÊkanmÊalprtÊ ÊnÊ
8
/"9
Êka tÊdak dÊdklaraÊkan langungmaka akan trjadÊkalahan$rror) tau jÊka kÊta mlakukan pndklaraÊan ulang atrÊbut trbut maka akan trjadÊrror
8
/"9
9 **
"
×Klas Abstract
la abtract mrupakan kla dÊmana mmÊlÊkÊ mtod-mtod namun tÊdak dÊdklaraÊkan pndklaraÊanna trjadÊ pada kla turunanna %ntuk
mmbuat kla abtractama dngan mmbuat kla bÊaananamun dÊaalÊ
dngan kuncÊ abtract pada klana dan dÊaalÊ dngan kata kuncÊ abtract
pada mtod ang akan dÊbuat namun tÊdak akan dÊdklaraÊkan tod ang abtract tÊdak prlu brÊÊkan dklaraÊna
Êal kÊta mmbuat kla abtractanlalu turunanna# ucÊng ambÊng dan
c ✉
trbut bÊcara$)namun karnatÊap han bÊaana brbda nada bÊcarana
maka kÊta buat mtodbÊcara$) trbut mnjadÊabtract
;
&1 ;
K
A ;
:
A ;
C
Êka klaturunan darÊ an tÊdak mndklaraÊkan mtodbÊcara$) maka akan trjadÊrrorkcualÊklatrbut juga klaabtract
× olimorfism
olÊmorfÊmmrupakan kmampuan untukbuah klammÊlÊkÊbanak kla
turunan tÊap kla turunan mmÊlÊkÊ dklaraÊ maÊng-maÊng ang unÊk dan
dapat brbagÊfungÊonalÊtaangama dngan klaparnt$ang dÊturunkan)
ontoh polÊmorfÊmadalah kla anangblumna tlah dÊbuat
; ;#" ;&1
c ✈
; ;4" ;A ;4
; ;)" ;A ;)
ak
t
Dalam ava bbrapa kla dapat dÊgabungkan dalam buah unÊt brnama
pakt $packag) nggunaan pakt angat dÊanjurkan agar kla-kla trlÊhat lbÊh tratur
%ntuk mndklaraÊkan pakt hana prlu mnggunakan kuncÊ packag pada bagÊan atafÊl java dÊÊkutÊnama pakt ama pakt tÊdak bolh dÊaalÊdngan
nomor dan tÊdak bolh mnganduk karaktr unÊk dan paÊ akt bÊaana
brtÊngkat untuk mmbrÊkan tÊngkatan pada pakt kÊta dapat mngunakan tanda $tÊtÊk)mÊal
(
) aplÊkaÊdata
) aplÊkaÊdataba
) aplÊkaÊform
DÊanjurkan jÊka kÊta mmbangun buah Êtm ang bar maka dÊprlukan
pnglompokkan jnÊ-jnÊ kla dalam pakt Êal untuk kla-kla tabl dapat dÊ maukkan k pakt data kla-kla form bÊa dÊmaukkan k pakt
formdan laÊn-laÊn
0 0
A;
Êka kÊta akan mnggunakan kla dngan lokaÊ pakt ang ama kÊta dapat mnggunakanna langung namun jÊka kÊta akan mnggunakan kla dngan
c
0 0
0A;
I
A;0;" ;A;
× isibiliti Dfault
blumna tlah dÊbaha tntang vÊÊbÊlÊtÊ prÊvat publÊc dan protctd
bnarna adaatu lagÊvÊÊbÊlÊtaÊtu dfaultnamun tÊdak mnggunakan kata kuncÊdfaultmlaÊnkan tÊdak prlu mnggunakan kata kuncÊ $koong)
Êkabuah atrÊbutmtodatau kladÊtandaÊdngan vÊÊbÊlÊtÊdfaultmakaÊtu artÊna atrÊbutmtodatau klatrbut hana dapat dÊakolh kla-kla
ang ada dalamatu pakt Êka akan dÊakdarÊluar paktmaka akan trjadÊ
rror
ontoh vÊÊbÊlÊtÊdfault
0 0
C;
Int
rfac
ntrfac mrupakan mkanÊm dÊmana kÊta dapat mnntukan mtod -mtod ang haruada pada kla ntrfachampÊr mÊrÊp dngan kla abtrak
namun ada bbrapa prbdaan padaÊntrfacdan klaabtrak
la abtrak bÊa mngandung mtod abtrak dan mtod tÊdak
abtrak dangkan padaÊntrfacharu mua mtodabtrak
la abtrak dapat mmÊlÊkÊ atrÊbut dangkan Êntrfac tÊdak bolh mmÊlÊkÊatrÊbut
la abtrak dÊgunakan olh kla laÊn mnggunakan parÊan
c
× åndklarasikan Intrfac
ntrfac mÊrÊp dnganlahana ang mmbdakan adalah kata kuncÊang dÊgunakan bukan clamlaÊnkanÊntrfac ontohdrhanabuahÊntrfac
0 0
/ &0
0
cara dfault luruh mtod ang ada dalam Êntrfac Êtu brÊpat abtract
dan publÊc hÊngga kÊta dapat mnghapuna mnjadÊlbÊhdrhanaprtÊ
brÊkut
0 0
/ &0
0
rlu dÊÊngat baha mtoddalamÊntrfactÊdak dapat prÊvat
warisan Intrfac
Dalam hal parÊan Êntrfac ama dngan cla hana ang mmbdakan
adalahÊntrfacdapat marÊÊlbÊh darÊ atuÊntrfac dangkan clahana dapat marÊÊ atu kla
0 0
/
0 0
/ I0
0
c
0 0
/ &0 DI0
ånggunakan Intrfac
buah kla dapat mnggunakan Êntrfac mlaluÊ kata kuncÊ Êmplmnt
brbda dngantnd buah kla dapat mnggunakan bbrapa Êntrfac mnggunakanÊmplmnt
0 0
0 &0
8&0 &0
0
I0
arnaÊntrfackÊmrupakan turunan darÊ Êntrfacndangan danukulan
maka mua kla ang mngÊmplmntaÊ Êntrfac kÊ haru
mndklaraÊkan luruh mtod ang ada pada Êntrfac kÊ ndangan dan
ukulan
Inn
r
lass
ava mndukung pmbuatan kladÊdalam kla ara mmbuat kladÊdalam kla ama dngan mmbuat kla prtÊ bÊaana hana lokaÊna brada
dalambuah badan klamÊal
0 0
>
9 "
c
9
8 "
8
× Anonymous lass
la anonÊmou mrupakan kla ang dÊdklaraÊkan tanda nama bÊaana kla ÊnÊdÊbuat ktÊka mndklaraÊkanbuah varÊabl ontoh
0 0
0 I0
I
I0 0" ;I0
0 I0
0 0
kÊlapada koddÊatakÊta hana mmÊlÊkÊkla rogram adahalbnarna trdapat dua klaaÊtu dngan kla nonmouang mrupakan turunan darÊ
Êntrfac ukulan nggunaan kla anonÊmou ÊnÊ bÊaa dÊlakukan ktÊka kÊta hana akan mmbuatbuah klaang hanakalÊpakaÊ aja
Kata Kunci static
ata kuncÊ tatÊc bnarna mrupakan pnlngan darÊ konp pmrograman brorÊntaÊ objkDngan mnggunakan kata kuncÊ tatÊc kÊta
c
haru mmbuat objk kla trbuthÊngga ÊnÊ mnalahÊ aturan
pmrograman brorÊntaÊ objk ang mnatakan baha untuk mngak buah atrÊbut atau mtodharumlaluÊobjk
ata kuncÊ tatÊc bÊaana dÊgunakan jÊka kÊta akan mmbuat buah kla
utÊlÊta hÊngga kÊta dapat dngan mudah mnggunakan mtod-mtod ang
ada dalam klatrbut tanpa mmbuat objkna Êal
0 0
BC 0
D "+
0D "L
Dngan bgÊtu kÊta dapat langung mngak mtod kalÊ dan tambah tanpa mmbuat objkungÊatmatÊka prtÊ
0 0
I
"#$
"#$
"BC 00D
rlu dÊÊngat jÊka mtod tatÊc hana dapat mmanggÊl mnggunakan atrÊbut atau mtodtatÊc laÊnnaartÊna jÊka kÊta mmanggÊl mtodnontatÊc dalam mtodtatÊccara langungmaka akan trjadÊrror
0 0
B C 0
0D
c
**
K
las
/
ava B
an
la atau ava an mrupakan kla dÊmana buah kla mmÊlÊkÊ
atrÊbut dan mmÊlÊkÊmtodgttr danttrDÊmana atrÊbutna brÊfat prÊvat
dan mtodgttr danttr na brÊfat publÊctodgttr dÊgunakan untuk mndapatkan nÊlaÊ atrÊbut trbut dangkan mtod ttr dÊgunakan untuk
mngubah nÊlaÊatrÊbut
namaan kla mÊrÊpprtÊpunuk untaÊal
namaDpan namalakang
lamat è tanggal*ahÊr
c contohtrÊbutanjangkalÊ
dangkan untuk pnamaan gttr dan ttrna pun mÊrÊpprtÊpunuk unta
mÊal
c
gtamaDpan tamaDpan gtlamat tlamat gtanggal*ahÊr tanggal*ahÊr
amun ada bbrapa pngcualÊan jÊka tÊp atrÊbutna adalah boolan maka gttr na bÊa dÊgantÊdarÊgt mnjadÊ ÊhÊnggaprtÊ ÊnÊ
è
boolan ÊudahnÊkah 1mua tÊp1 gtama
ontoh kla ahaÊaang mmÊlÊkÊnÊmnamadan alamat
c
C;
&
& "
!
! "
!
! "
c
nanganan K
salahan
da dua jnÊ kalahan prtama kalahan pada aat kompÊlaÊ ada pula kalahan adaaat brjalanÊaana kalahan kompÊlaÊdapat langung trjadÊ
ktÊka pro kompÊlaÊ hÊngga pro kompÊlaÊ akan dÊbatalkan amun jÊka kalahanna trbut adalah kalahan aat brjalan maka program akan
brhaÊl brjalan namun aat kalahan trbut trjadÊ maka program akan
mnjadÊrror
ontoh kalahan mÊalna
0 0
I
"#$
"$ "#$*
kÊla mungkÊn tÊdak ada ang alah dngan kod dÊata up dan kod dÊatapun dapat dÊkompÊl dngan baÊk amun aat dÊjalankan akan trjadÊ
rror aÊtu rror karna trjadÊ pmbagÊan dÊmana haÊl darÊ pmbagÊan adalah tÊdak trdfÊnÊÊkanlh karna Êtu prlu dÊlakukan pnanganan kalahan
×
å
nangkap K
salahan
gar kalahan ang trjadÊ dapat dÊdÊtangkap maka kÊta dapat mnggunakan trcatch
** 00 1
**1010 1
Êal pada kod blumna kÊta tlah mmbuat buah program ang mlakukan pro pmbagÊan ang mnbabkan rror maka kÊta dapat mlakukan pnanganan kalahnna
c
I
"#$ "$ "#$*
;
J D 1 < C
Êka program dÊata dÊjalankan maka akan mnghaÊlkan kluaran "%p trjadÊ
rrorb2ro͟
la hroabl mrupakan kla kalahan ang palÊng tÊnggÊ jadÊ kÊta dapat mnanganÊ luruh kalahan mnggunakan kla hroabl
nanganan S
cara B
rtingkat
r catch tÊdak hana dapat dÊtanganÊ olh atu kla cptÊon dapat juga
dÊtanganÊolh bbrapa kla cptÊonprtÊbrÊkut
**0 00 1 1 #
**101 # 1 1 4
**101 4 1 1 )
**101 ) 1
nanganan cara brÊngkat haru brtÊngkat pula jnÊ kla rror na palÊng baah harulah kla cptÊonang palÊng tÊnggÊmÊal kla hroabl
å
lontarkan Exc
ption
adang ada kalana kÊta prlu mmbuat kalahan Êal aat kÊta mmbuat
buah kla ahaÊa maka nÊm ajÊb dÊmaukkan lalu jÊka nÊm tÊdak dÊmaukkanmaka dÊanggapalah
0 0
c
!
! ;;
/""
; ;; !9
"
%ntuk mlontarkan kalahan kÊta harumnggunakan kuncÊthrodan mtod ang mmungkÊnkan mlontarkan kalahan haru mmÊlÊkÊ thro dÊÊkutÊ
dngan kla cptÊon na
Dngan bgÊtu jÊka kÊta akan mngubah nÊmmaka harudÊtanganÊkalahanna mnjadÊ prtÊ ÊnÊ
0 0
0C;
I
C;;" ;C; ; !
;
J D 1 < C
å
mbuat K
las Exc
ption
la cptÊon mrupakan klarrorang dapat dÊgunakan untuk mmbangun
kla cptÊonang harudÊtanganÊ rrorÊnÊbÊa dÊbÊlang compÊlatÊoncptÊon artÊnaajÊb dÊtanganÊ
%ntuk mmbuat kla cptÊon kÊta hana prlu mmbuat kla turunan darÊ
kla cptÊon
c
:1 :
:1
å
mbuat K
las Runtim
Exc
ption
la untÊm cptÊon mrupakan kla rror ang rrorna trjadÊ ktÊka aplÊkaÊbrjalanartÊnarror jnÊ ÊnÊtÊdak prlu langung dÊ catchÊrÊp dngan
pmbagÊan dnganÊta dapat tÊdak mnangkaprror trbut%ntuk mmbuat rror jnÊ ÊnÊkÊta dapat mmbuat klaturunan darÊ untÊm cptÊon
K03 A M :
K03 A
Êal kÊta ubahrror pada nÊm kla ahaÊa mnjadÊrror trbut
0 0
0 K03 A
C;
!
!;K03 A
/""
; ;K03 A!9
"
Dngan dmÊkÊan tanpa mnangkap rrorpun kÊta dapat langung mmanggÊl mtodtÊm$nÊm)
c
0C;
I
C;;" ;C; ; !#$#$5$)#
Blok Finally
lok fÊnallmrupakan blokanglalu dÊjalankan pada protrcatchbaÊkÊtu trjadÊ rror ataupun tÊdak lok fÊnall trdapat pada bagÊan akhÊr tr catch ontoh
0 0
0C;
0 K03 A
I
C;;" ;C; ; !#$#$5$)#
K03 A
1:< C /
I910
Êka program dÊata dÊjalankan maka akan kluar tulÊan"atÊDÊjalankan͟dan
alaupun kÊta maukkan dataalah
0 0
0C;
0 K03 A
I
C;;" ;C; ; !
K03 A
c
/
I910
c
K
las Ȃ K
las
×
String
prtÊ ang tlah dÊbaha pada matrÊ tÊp data trÊng bukanlah tÊp data
trÊng adalahbuah klaamun klatrÊng mmÊlÊkÊkunÊkanaÊtu kÊta dapat mnggunakantrÊng tanpa mndklaraÊkanna trlbÊh dahulu
"
adÊtÊdak prlu mmbuatbuahtrÊng dahulu
" ;
DÊkarnakan trÊng mrupakan kla hÊngga trÊng pun mmÊlÊkÊ banak mtod ang dapat kÊta gunakan untuk mlakukan pro manÊpulaÊ trÊng
trbut prtÊ mnjadÊkanluruh hurufna bar $uppr) kcÊl $uppr) d an
laÊn-laÊn
ontoh
"
"J 8
aÊl darÊprÊntah dÊataadalah uppr darÊ "hhh͟aÊtu" ͟
×× ånggabungkan String
trÊng mrupakan objk ang unÊk bahkan kÊta dapat mnggabung dua buah
trÊng atau lbÊh da dua cara mnggabungkantrÊngaÊtu mnggunakan tanda
$tambah)
"+++
tau dapat mnggunakan mtodconcat agar lbÊh trlÊhat brorÊntaÊobjk
c
× åmbandingkan String
adang ada kalana kÊta mlakukan prbandÊngkantrÊngmÊal
0 0
I
#"+ #"#+
4"
/#""4
#+ +4
# + 0 + 4
aat dÊjalankan maka haÊlna adalah "abc tÊdak ama dngan abc͟ *ho kok?adahal abc patÊ ama dngan abc$
nataana adalah prbandÊngan && hana dapat dÊgunakan untuk
mmbandÊngkan tÊp datatÊdak dapat dÊgunakan untuk mmbandÊngkan kla
karna trÊng adalah klamaka tÊdak dapat dÊbandÊngkan mnggunakan tanda
&&
%ntuk mmbandÊngkan objk maka kÊta haru mnggunakan mtod ual$) mÊlÊk kla trbut jadÊ haruna mmbandÊngkan trÊng adalah bagaÊ
brÊkut
0 0
I
#"+ #"#+
4"
c
#+ +4
# + 0 + 4
Êka program dÊatadÊjalankanmaka haÊlna adalah"abcama dngan abc͟
Dat
Datmrupakan rprntaÊuntuk tanggal dalamava laDatbrapa pada
pakt javautÊlontoh mmbuat tanggalkarang
0 0
19
I
9 " ;9
aangna alaupun Dat mrupakan rprntaÊ tanggal dalam ava namun banak mtod-mtod mÊlÊk kla Dat ang udah dprcatd $tÊdak
dÊanjurkan untuk dÊgunakan) olh karna Êtu dÊprlukan kla laÊn untuk
mlakukan manÊpulaÊDataÊtualndar
al
ndar
alndar hampÊr mÊrÊp dngan Dat kla ÊnÊ mrupakan rprntaÊ tanggal dalam ava ara mmbuat alndar tÊdak mlaluÊ buah kontruktor
mlaÊnkan mnggunakan mtodtatÊc
0 0
18
I
c
× ångubah alndar
Êka kÊta akan mlakukan pngubah tanggal atauaktubuah calndarbaÊkÊtu mnÊtdtÊkjamharÊbulan dan tahunmaka kÊta dapat mnggunakan mtod
t$)
/ D
DÊmana fÊld na adalah
(
)c- ngubah data mÊlÊkon )c- ngubah data dtÊk ) è ngubah data mnÊt )'- ngubah data jam
)-(-è' ngubah data harÊdalam bulan )-( ngubah data harÊdalam mÊnggu )-( ngubah data harÊdalam tahun )-è' ngubah data bulan
) ngubah data tahun
ontohna
0 0
18
I
8 "8 O
8 P:&MD#Q22
8 CF!D8 9:8:C3:M 8 9&PRFBRCF!D4Q
c
ånambah dan ångurangi alndar
laÊn mngubah cara manual mnggunakan t$) alndar juga mmÊlÊkÊ
mtodadd$)ang dÊgunakan untuk mnambah atau mngurangÊdata calndar trbutformatna adalahbagaÊbrÊkut
/ D
DÊmana fÊld pada mtodadd$)ama dngan fÊld pada mtodt$) ontoh
0 0
18
I
8 "8 O
** #$
8 9&PRFBRCF!D#$
Êka akan mnguraÊdatacukup mmaukkan data ngatÊfmÊal
0 0
18
I
8 "8 O
** #$
8 9&PRFBRCF!D -#$
c
è
uli
✇Ê î ①* ①
②
c③①+③ Ê Ê
④ Ê
Ê ÊvÊ
Ê
ÊÊ ÊjÊî ⑤ ,⑤
Ê c Ê
Ê Ê ÊÊ Ê Ê
Ê Ê Ê Ê Ê Ê
ÊÊ Ê Ê Ê
-⑥
j. Ê Ê /
Ê ÊÊ Ê
a c Êc
a Êc
a c c