1. Nggawe obyek
Inggih, kita wis teka ing nggawe obyek. Sampeyan wis nemoni iki sadurunge, nanging saiki kita bakal nganalisis topik iki kanthi luwih rinci. Sejatine gampang banget kanggo nggawe obyek.
Kanggo nggawe obyek, sampeyan kudu nggunakake operator anyar . Nggawe obyek katon kaya iki:
new Class(arguments)
Sawise nggawe obyek, paling asring kita langsung nyimpen referensi ing variabel, sing asring nuduhake jinis sing padha karo obyek sing digawe. Tegese nalika nggawe obyek, sampeyan biasane ndeleng kode kaya iki:
Class name = new Class(arguments)
Ing endi nggawe variabel anyar, lan kode ing sisih tengen tandha padha yaiku nggawe obyek anyar sing jinise .Class name
Class
Tuladha:
Kode | Cathetan |
---|---|
|
Nggawe Object obyek |
|
Nggawe Cat obyek |
|
Nggawe Scanner obyek |
Programer asring menehi jeneng variabel sawise kelas, nanging nganggo huruf cilik. Kanggo programmer anyar, kode kasebut bisa mbingungake:
Kode |
---|
|
|
|
Ora ana sing salah karo kode iki - iki minangka kode sing paling biasa, ing ngendi variabel digawe banjur langsung diinisialisasi dening obyek saka jinis sing padha.
Ing sisih kiwa tandha padha kita duwe nggawe variabel. Ing sisih tengen, nggawe obyek. Mekaten.
2. Konstruktor
Sampeyan mbokmenawa wis weruh sawetara argumen sing kerep dilewati nalika nggawe obyek. Apa maneh, argumen diterusake kanggo sawetara obyek, nanging ora liyane. Kepiye mekanisme kabeh iki kanthi argumentasi?
Kabeh uga prasaja ing kene: saben kelas duwe cara khusus (utawa cara) sing tanggung jawab kanggo nangani argumen sing diterusake nalika nggawe obyek. Cara kasebut diarani konstruktor . Utawa nalika kita ngomong babagan mung siji: konstruktor .
Mbedakake cara konstruktor saka cara biasa gampang. Cara iki nduweni rong fitur sing mbedakake:
- jeneng konstruktor padha karo jeneng kelas (lan diwiwiti kanthi huruf kapital)
- konstruktor ora duwe jinis bali.
Umumé, iki biasane katon kaya:
modifiers Class(arguments)
{
Code
}
Tuladha:
Kode | Cathetan |
---|---|
|
Point Point konstruktor kelas |
|
Nggawe obyek saka Point kelas. Konstruktor kelas bakal diarani. |
Wigati apa konstruktor katon kaya: ora duwe jinis bali lan jenenge padha karo jeneng kelas.
Lan siji liyane: njupuk dipikir ing kode nang konstruktor. Paramèter konstruktor duwe jeneng sing padha karo kolom kelas: x lan y. Praktek standar supaya ora nggawe jeneng parameter novel. Jenenge padha karo lapangan kelas. Konflik jeneng dirampungake nggunakake tembung kunci iki.
3. Nelpon konstruktor
Nalika nggunakake operator anyar lan prentah kaya " Kelas anyar ( argumen )" kanggo nggawe obyek anyar, ana rong perkara:
- Mesin Java nggawe obyek sing jinise yaiku Kelas
- Mesin Java nelpon konstruktor obyek lan mlebu ing argumen sampeyan
Minangka programmer, sampeyan kudu mutusake apa konstruktor kelas sampeyan, lan paramèter apa sing kudu diduweni para konstruktor kasebut.
Upamane sampeyan arep nggawe kelas kanggo nglacak kucing ing papan perlindungan kewan. Banjur Cat
kelas sampeyan bisa uga katon kaya iki:
|
|
|
Iki diijini |
|
Nanging iki ora diidini Kode iki ora bakal dikompilasi. |
|
Lan iki ora diijini. Kode iki ora bakal kompilasi. |
Kelas kasebut Cat
mung duwe siji konstruktor kanthi paramèter jeneng lan umur. Amarga ora ana konstruktor liyane, sampeyan kudu ngliwati jeneng kucing ( name
) lan umur ( age
) minangka argumen nalika nggawe obyek. Maringake argumen menyang konstruktor ora opsional .
4. Multiple konstruktor
Nanging yen perlu, sampeyan bisa nambah sawetara konstruktor kanggo kelas. Ora ana watesan ing jumlah konstruktor utawa paramèter. Nalika sampeyan nggawe obyek, compiler kanthi otomatis milih konstruktor sing cocog karo paramèter
Kode | Cathetan |
---|---|
|
|
|
Iki diijini: konstruktor pisanan bakal diarani |
|
Iki diijini: konstruktor kapindho bakal diarani |
|
Nanging iki ora diidini Kode iki ora bakal dikompilasi. |
Kita mutusake kanggo nyatakake yen umur kucing bisa uga ora dingerteni. Kanggo nangani kasus iki, kita nambahake konstanta khusus UNKNOWN
bebarengan karo konstruktor sing mung nduweni siji parameter - jeneng kucing.
Elinga yen kita isih initialize loro variabel nang loro konstruktor. Kita ngganti paramèter sing ora dingerteni / ilang karo konstanta UNKNOWN
.
Yen ora ana nilai sing ditugasake kanggo variabel umur, mula bakal duwe nilai standar 0. Sawise kabeh, kucing sing ditemokake ing dalan bisa uga 0 taun lengkap. Tegese nol ing variabel umur ora ateges "umur sing ora dingerteni".
5. Default konstruktor
Yen sampeyan pengin obyek bisa instantiated tanpa paramèter, kelas sampeyan kudu ngumumake konstruktor tanpa argumentasi.
Konstruktor tanpa paramèter ora kudu konstruktor tanpa kode. Konstruktor kasebut bisa ngemot kode sing miwiti variabel kanthi nilai wiwitan:
Kode | Cathetan |
---|---|
|
|
|
Iki diijini: konstruktor pisanan bakal diarani |
|
Iki diijini: konstruktor kapindho bakal diarani |
Konstruktor standar
Ana titik penting sing kudu sampeyan ngerti lan eling.
Yen kelas sampeyan nyatakake ora siji konstruktor , kompiler bakal nambah konstruktor standar, yaiku konstruktor tanpa argumentasi karo modifier umum.
Nanging yen kelas sampeyan ngumumake siji konstruktor , mula ora ana konstruktor standar sing bakal ditambahake lan sampeyan kudu nambahake dhewe yen sampeyan pengin.
Kode | Cathetan |
---|---|
|
|
|
Iki diijini: konstruktor standar bakal diarani |
GO TO FULL VERSION