"Hai Amigo! Muga-muga sampeyan seneng ngrampungake tugas kanthi nggunakake metode sampeyan dhewe, lan sampeyan ngerti carane trep nggawe metode. Saiki ayo ngomong babagan topik sing paling menarik."
"Sampeyan wis narik kawigatenku, Diego... Topik anyar?"
"Saben topik anyar kanggo sampeyan, robot enomku! Lan iki ora ana sing istiméwa. Sanadyan sepisan maneh babagan metode. Sampeyan bisa uga wis ngeweruhi saka metode kaya ngono, kita bisa ngirim System.out.println()
argumentasi menyang metode. Sawise kita mlebu metode kasebut. , kita deleng minangka paramèter."
"Parameter apa sing kita tulis ing jero kurung?"
"Ya, persis. Lan, nyatane, paramèter ningkatake keuntungan sing kita entuk saka nggawe lan nggunakake metode."
"Aku entuk apa sing sampeyan gunakake, lan ternyata aku wis rampung. Kepiye carane kita ngumumake metode kanthi paramèter?"
"Satemene cukup prasaja:
public static void name(parameters)
{
method body
}
"Endi name
jeneng unik saka cara lan method body
nggantosi printah sing nggawe serep cara. Lan parameters
placeholder kanggo paramèter cara, dipisahake dening koma."
"Hmm... Aku rumangsa ngerti ... Utawa mungkin ora ... "
"Aku bakal menehi sawetara rincian liyane babagan cithakan iki supaya sampeyan yakin manawa sampeyan ngerti yen sampeyan ngerti:
public static void name(Type1 name1, Type2 name2, Type3 name3)
{
method body
}
Ing ngisor iki sawetara conto:
Kode | Panjelasan |
---|---|
|
Cara kasebut print diumumake kanthi parameter:String str |
|
Cara kasebut print diumumake kanthi rong paramèter:String str int count |
|
Cara kasebut write diumumake kanthi rong paramèter:int x int y |
"Ah... Saiki wis jelas. Lan yen kita ora pengin metode kasebut duwe paramèter, banjur kita mung ninggalake kurung kosong."
"Persis. Sejatine, paramèter minangka variabel khusus ing sawijining metode. Kanthi bantuan kasebut, sampeyan bisa ngliwati macem-macem nilai menyang metode kasebut nalika diarani. Lan yen sampeyan ora perlu ngliwati nilai, banjur ninggalake kurung kosong.
"Contone, ayo nulis cara sing nampilake baris teks sing diwenehi kaping pirang-pirang. Apa ana pikirane babagan carane nindakake iki?"
"Inggih ... Kayane aku ngerti carane nulis kode kanggo nampilake senar ing layar kaping pirang-pirang ... "
"Kepiye carane sampeyan nemtokake senar sing bakal ditampilake? Lan kepiye sampeyan nemtokake jumlah garis sing ditampilake? Apa sampeyan bisa ngira?"
"Iku wiwit dadi cetha ... Mungkin kanthi bantuan paramèter metode?"
"Persis. Parameter senar kanggo baris teks, lan parameter numerik kanggo jumlah baris sing ditampilake. Kode sing nindakake iki bakal katon kaya iki:
Kode | Panjelasan |
---|---|
|
Kita ngumumake printLines metode kasebut kanthi paramèter ing ngisor iki: String text , int count Cara nampilake text count kaping String Kita nelpon printLines metode kanthi macem-macem paramèter |
"Saben-saben metode diarani, paramèter kasebut diwenehi nilai sing dilewati, lan mung banjur kita miwiti nglakokaké printah ing cara kasebut.
Argumentasi
"Aku pengin sampeyan menehi perhatian khusus marang cara nelpon sing duwe paramèter. Nilai sing diterusake menyang metode kasebut biasane diarani argumen nalika diterusake menyang metode kasebut.
Ayo goleki conto liyane:
Kode | Panjelasan |
---|---|
|
Kita ngumumake printLines metode kasebut kanthi paramèter ing ngisor iki: String text , int count Cara nampilake String text count kaping Kita nelpon printLines metode kanthi argumen ing ngisor iki:text = "Hi"; count = 10; text = "Bye"; count = 20; |
"Nalika printLines
metode kasebut pisanan diarani, paramèter kasebut diwenehi nilai ing ngisor iki:
String text = "Hi", int count = 10
.
"Nalika printLines
metode kasebut diarani kaping pindho, paramèter kasebut diwenehi nilai sing beda:
String text = "Bye", int count = 20
.
"Parameter ora luwih lan ora kurang saka variabel sing diwenehi nilai tartamtu nalika metode diarani. Nilai "Hi"
, "Bye"
, 10
, lan 20
dhewe diarani argumen."
"Aku bakal nyoba ngelingi prabédan lan ora mbingungake konsep kasebut."
Jeneng variabel sing bertentangan nalika nelpon metode
"Yen sampeyan nelpon metode, sampeyan bisa nggunakake variabel minangka argumen.
"Inggih, punika masuk akal!"
"Iku akal, nanging bisa nyebabake sawetara kesulitan. Ayo bali menyang conto maneh, nanging wektu iki kita bakal mindhah argumen menyang variabel sing kapisah:
Kode | Panjelasan |
---|---|
|
Kita ngumumake printLines metode kasebut kanthi paramèter ing ngisor iki: String text , int count Cara nampilake String text count kaping Kita nelpon printLines metode kanthi argumen ing ngisor iki:text = str; count = n; |
"Hmm... Aku ora weruh kangelan. Kita duwe variabel str
. Nilai kasebut ditugasake menyang text
parameter nalika metode kasebut diarani. Kita duwe variabel n
. Nilai kasebut ditugasake menyang count
parameter nalika metode kasebut diarani." "Nganti saiki, kabeh wis jelas."
"Apik, apik. Saiki ayo ganti jeneng variabel ing main
metode:
Kode | Panjelasan |
---|---|
|
Kita ngumumake printLines metode kasebut kanthi paramèter ing ngisor iki: String text , int count Cara nampilake String text count kaping Kita nelpon printLines metode kanthi argumen ing ngisor iki:text = text; count = count; |
“Nggatekake rong perkara
Pisanan: kita duwe variabel kanthi jeneng sing padha ing macem-macem cara. Iki minangka variabel sing beda-beda (kita sengaja nggambarake kanthi nggunakake warna sing beda). Kabeh kerjane padha karo conto sadurunge, ing ngendi variabel ing main
metode kasebut dijenengi str
lan n
.
Kapindho: Ora ana gaib sing kedadeyan nalika metode kasebut diarani. Parameter kasebut mung diwenehi nilai argumen. Preduli saka apa iku nomer, strings, variabel, utawa ekspresi.
"Sawise kita ngganti jeneng variabel ing cara utama, ora ana owah-owahan. Padha variabel beda ing cara beda sadurunge, lan supaya padha tetep. Ora ana sambungan gaib antarane loro text
variabel."
"Saiki aku ngerti."
Maringaken referensi kanggo cara
"Muga-muga sampeyan wis nyasarake kabeh sing dakkandhakake babagan menehi argumentasi menyang metode. Aku ngomong, amarga saiki kita bakal nyilem luwih jero menyang topik iki. Rungokake kanthi teliti."
"Sampeyan wis ngerti manawa sawetara variabel ing Jawa ora nyimpen nilai-nilai kasebut, nanging minangka referensi , yaiku alamat blok memori ing ngendi nilai kasebut. Iki minangka variabel senar lan variabel array.
"Nalika pangembang nemtokake variabel array liyane menyang variabel array, apa sing kedadeyan?"
"Apa dheweke banjur nunjuk ing alamat sing padha?"
"Bener. Loro variabel kasebut wiwit ngrujuk menyang papan sing padha ing memori:
"Lan apa sing kedadeyan yen salah sawijining variabel kasebut minangka parameter metode?
Kode | Panjelasan |
---|---|
|
Cara sum ngetung jumlah nomer ing larik liwati lan nampilake ing layar |
"Persis bab sing padha: data
parameter bakal ngemot referensi menyang area memori sing padha karo months
variabel. Nalika metode kasebut diarani, ana tugas sing prasaja: .data = months
"Lan amarga loro variabel nuduhake area memori sing padha nyimpen integer, banjur sum
cara kasebut ora mung bisa maca nilai saka array, nanging uga ngganti!"
"Aku rumangsa ngerti, nanging aku butuh conto liyane!"
"Inggih, contone, kita bisa nulis cara kita dhewe sing ngisi array loro-dimensi karo nilai padha. Iki carane bisa katon:
Kode | Panjelasan |
---|---|
|
Cara kasebut fill ngulang saben sel ing array rong dimensi sing dilewati lan ditugasake value . Kita nggawe array rong dimensi. Kita ngisi kabeh array kanthi nomer kasebut 8 . |
Metode kanthi jeneng sing padha
"Saiki ayo bali menyang jeneng metode maneh."
"Aku ora bisa mbayangno apa maneh sing bisa diomongake babagan jeneng!"
“Inggih, standar basa Jawa mbutuhake kabeh metode ing kelas padha duwe jeneng unik.
"Dadi, ora bisa ngumumake rong cara sing padha ing kelas sing padha?"
"Saiki — mbayar manungsa waé sing cedhak! Metode ing kelas pancen bisa duwe jeneng sing padha! Nanging ing kasus iki, kudu duwe paramèter sing beda-beda. Ing tembung liya, metode dibandhingake kanggo kesamaan, ora mung jeneng kasebut dianggep, nanging uga . jinis paramèter ! Elinga yen aku khusus ngandika jinis. Jeneng paramèter ora dianggep . Conto:
Kode | Panjelasan |
---|---|
|
Telung cara iki minangka cara sing beda . Padha bisa diumumake ing kelas sing padha. |
|
Saben limang cara iki dianggep beda . Padha bisa diumumake ing kelas sing padha. |
|
"Cara loro iki dianggep padha , tegese ora bisa diumumake ing kelas sing padha." |
"Aku babar blas bingung! Yagene kita kudu kabeh iki? Yagene sawetara cara dianggep padha , nalika liyane beda ? Lan apa jeneng parameter ora dijupuk menyang akun nalika nemtokake uniqueness saka cara? Apa uniqueness perlu ing kabeh?"
"Iku yen kompiler nyusun program, mesthine kudu ngerti cara sing sampeyan pengin nelpon ing sembarang panggonan.
"Contone, yen sampeyan nulis , compiler pinter lan bakal gampang nyimpulake yen sampeyan arep nelpon cara kene karo parameter. Nanging yen sampeyan nulis , compiler bakal weruh telpon kanggo metode karo parameter. jeneng apa sing diwènèhaké programmer marang paramèter nalika mratelakake metode kasebut."System.out.println("Hi")
println()
String
System.out.println(1.0)
println()
double
Ahh, kayane wiwit liwat!
"Nalika metode diarani, kompiler mesthekake yen jinis argumen cocog karo jinis paramèter. Ora nggatekake jeneng argumen kasebut. Ing Jawa, jeneng parameter ora mbantu kompiler nemtokake cara sing bakal ditindakake. telpon Programer kudu wong, ora compiler.
"Lan aku guess pramila padha ora dijupuk menyang akun nalika nemtokake uniqueness saka cara?"
"Ya, pancen bener. Jeneng metode lan jinis paramèter kasebut diarani teken metode . Contone, sum (int, int)
"
"Dadi saben kelas kudu duwe metode kanthi teken unik tinimbang metode kanthi jeneng unik."
"Inggih, Amigo! Sampeyan ngringkes pelajaran iki kanthi sampurna. Yen ana sing ora jelas, aja gupuh. Topik iki bakal jelas sawise sawetara tugas."
GO TO FULL VERSION