1. Pembolehubah setempat
Mari kita bercakap lebih serius tentang pembolehubah. Tetapi kali ini kita tidak akan membincangkan struktur dalaman mereka. Sebaliknya, kami akan menumpukan pada cara pembolehubah berinteraksi dengan kod di mana ia berada.
Semua pembolehubah yang diisytiharkan di dalam kaedah dipanggil pembolehubah tempatan . Pembolehubah tempatan hanya wujud dalam blok kod di mana ia diisytiharkan. Atau, untuk lebih tepat, ia wujud dari saat ia diisytiharkan sehingga penghujung blok kod di mana ia diisytiharkan.
Untuk kesederhanaan, mari kita pertimbangkan contoh:
Kod | Keterlihatan berubah-ubah |
---|---|
|
|
Mari kita bercakap tentang mengakses pembolehubah tempatan sekali lagi. Berikut ialah blok kod yang terdiri daripada pendakap kerinting: ini boleh menjadi badan kaedah, badan gelung atau hanya blok kod untuk pernyataan bersyarat. Pembolehubah yang diisytiharkan dalam blok kod wujud sehingga penghujung blok kod itu.
Jika pembolehubah diisytiharkan dalam badan gelung, maka ia akan wujud hanya dalam badan gelung. Ia dicipta dan dimusnahkan pada setiap lelaran gelung.
Contoh:
Kod | Keterlihatan berubah-ubah |
---|---|
|
|
Kami dapat mengisytiharkan pembolehubah tempatan kedua yang dinamakan b
hanya kerana pembolehubah pertama b
tidak kelihatan dalam blok kod di mana b
pembolehubah kedua diisytiharkan.
2. Parameter
Seperti yang kita katakan sebelum ini, setiap kaedah boleh mempunyai pembolehubah yang kita panggil parameter. Bagaimana dengan keterlihatan dan seumur hidup mereka?
Semuanya mudah. Parameter dicipta apabila pelaksanaan melangkah ke dalam kaedah (iaitu apabila kod kaedah mula dilaksanakan). Mereka dihapuskan apabila kaedah tamat. Mereka kelihatan di seluruh badan kaedah.
Contoh:
Kod | Keterlihatan berubah-ubah |
---|---|
|
|
Seperti yang kita katakan sebelum ini, args
hanyalah pembolehubah yang jenisnya ialah tatasusunan rentetan. Dan seperti semua parameter, ia tersedia di mana-mana dalam badan kaedah. Yang berkata, kami biasanya mengabaikannya dalam contoh kami.
3. Pembolehubah dalam kelas
Anda akan ingat daripada pelajaran di Tahap 1 bahawa kelas boleh mempunyai kaedah dan pembolehubah. Kaedah kadangkala dipanggil kaedah contoh, dan pembolehubah - pembolehubah atau medan contoh. Ini sebenarnya sinonim dalam Java.
Apakah pembolehubah (atau medan) kelas?
Mereka adalah pembolehubah yang diisytiharkan bukan dalam kaedah, tetapi dalam kelas.
Mereka boleh diakses daripada mana-mana kaedah (bukan statik) kelas. Secara kasarnya, pembolehubah contoh ialah pembolehubah yang dikongsi oleh semua kaedah kelas.
Contoh:
Kod | Keterlihatan berubah-ubah |
---|---|
|
|
Dalam contoh ini, kami mempunyai dua kaedah — add()
dan remove()
. Kaedah add()
menambah pembolehubah sum
dan count
contoh, dan remove()
kaedah mengurangkan pembolehubah sum
dan count
. Kedua-dua kaedah berfungsi pada pembolehubah contoh yang dikongsi.
Pembolehubah tempatan wujud semasa kaedah sedang dilaksanakan. Pembolehubah contoh kelas wujud dalam objek kelas selagi objek itu wujud. Anda akan mempelajari butiran tentang objek kelas di peringkat seterusnya.
4. Pembolehubah statik
Seperti kaedah, pembolehubah dalam kelas boleh statik atau tidak statik. Kaedah statik hanya boleh mengakses pembolehubah statik.
Dalam Tahap 11, kami akan menganalisis struktur pembolehubah statik dan kaedah dan anda akan memahami sebab sekatan ini.
Untuk membuat pembolehubah statik (pembolehubah kelas), anda mesti menulis static
kata kunci dalam pengisytiharannya.
Pembolehubah statik tidak terikat pada objek atau contoh kelas di mana ia diisytiharkan. Sebaliknya, mereka tergolong dalam kelas itu sendiri. Itulah sebabnya mereka wujud walaupun tidak satu pun objek kelas telah dicipta . Anda boleh merujuknya dari kelas lain menggunakan konstruk seperti:
ClassName.variableName
Contoh:
Kod | Keterlihatan berubah-ubah |
---|---|
|
|
Dalam contoh di atas, kami mencipta Storage
kelas berasingan, memindahkan count
dan sum
pembolehubah ke dalamnya, dan mengisytiharkannya statik . Pembolehubah statik awam boleh diakses daripada sebarang kaedah dalam program (dan bukan sahaja dari kaedah).
GO TO FULL VERSION