Perbezaan Antara Akhir dan Statik

Dalam matematik dan sains, pemalar adalah istilah yang menandakan nilai tertentu seperti 'π' yang merupakan nama praktikal untuk nombor 3.14159. Java mempunyai pemalar jenisnya. Ini adalah pemboleh ubah yang di bawah (a) tidak termasuk objek dan sub (b) tidak mengubah nilai mereka apabila ia ditetapkan. Kata statik dalam perisytiharan ubahsuaian menunjukkan bahawa pembolehubah tidak tergolong dalam sebarang objek. Terdapat kata kunci yang sama yang mengatakan bahawa nilai ubah hanya akan ditetapkan sekali dan tidak akan berubah. Inilah kata kunci akhir. Kata kunci ini tidak terhad kepada pembolehubah statik tetapi boleh digunakan dengan pembolehubah contoh, pembolehubah setempat, dan bahkan dengan pemboleh ubah yang merupakan kaedah parameter. Dengan mengisytiharkan pemboleh ubah sebagai muktamad, anda menunjukkan kepada semua orang bahawa pembolehubah semasa kewujudan akan mempunyai nilai yang sama. Lebih penting lagi, pengkompil akan mengesan setiap percubaan untuk menukar nilai pembolehubah yang diisytiharkan dan melaporkannya sebagai kesilapan. Bagi istilah Java, pemboleh ubah yang diisytiharkan sebagai statik dan muktamad dipanggil pemalar.

Apa yang terakhir?

Pengubah suai terakhir boleh digunakan di beberapa tempat dalam bahasa pengaturcaraan Java. Di sini kita akan meliputi penggunaan yang paling lazim. Pengubah suai terakhir boleh digunakan untuk pengisytiharan pemboleh ubah tempatan, argumen fungsi, dan pembolehubah anggota statik atau statik. Dalam konteks ini, pengubah ubah berubah berubah menjadi tetap. Penerjemah bahasa terjemahan akan memeriksa apakah beberapa kode mencoba mengubah nilai, dan percobaan tersebut akan ditandai sebagai kesalahan. Contohnya.

nilai int akhir = 17;

Pembolehubah statik ahli dengan pengubah ini digunakan sebagai pemalar global; contohnya, dalam PI variable java.lang.Math, dinyatakan dengan tepat

awam akhir akhir statik PI = 3.14159265358979323846;

Kita boleh memohon pengubah terakhir kepada perisytiharan fungsi. Fungsi yang ditandakan dengan muktamad tidak lagi dapat ditolak - iaitu pelaksanaan terakhirnya. Kaedah abstrak tidak boleh diisytiharkan akhir - hakikat bahawa mereka abstrak bermakna mereka kekurangan pelaksanaan; ia pastinya tidak boleh menjadi negeri muktamad mereka. Contohnya.

int akhir awam int meaningLife ()

kembali 42;

Kita boleh memohon pengubah terakhir kepada deklarasi kelas. Kelas yang ditandakan dengan final tidak lagi dapat mewarisi - iaitu pelaksanaan terakhirnya. Jelas, kelas abstrak tidak boleh muktamad pada masa yang sama. Inilah contohnya

kelas akhir awam Tertutup

// ...

Salah satu contoh kelas terhingga ialah kelas java.lang.String - ia terhingga supaya tidak ada yang boleh mewarisi dan dengan itu mendapat akses kepada pembolehubah ahli.

Apa itu Statik?

Pembolehubah statik bukan milik kelas tertentu. Pembolehubah statik tergolong dalam kelas itu sendiri dan di dalam memori terdapat hanya satu lokasi, tanpa mengira jumlah salinan kelas yang dicipta dalam memori. Pembolehubah bukan statik tergolong dalam spesimen kelas - setiap contoh kelas mempunyai salinan sendiri pemboleh ubah tersebut. Pembolehubah statik tergolong dalam kelas - kelas dalam memori menyimpan nilai pemboleh ubah tersebut; jadi semua kelas sampel melihat kandungan yang sama supaya kita boleh mempertimbangkan pemboleh ubah statik untuk dikongsi di antara semua saiz kelas. Dengan mengemaskini pembolehubah nilai, nilai baru akan secara automatik dilihat oleh semua keadaan kelas itu. Penapis statik boleh digunakan pada mana-mana unsur yang diisytiharkan secara sah di dalam kelas. Dalam kes pembolehubah keahlian, akibatnya adalah bahawa pemboleh ubah ahli tersebut akan disimpan dalam memori hanya dalam satu tempat. Apa yang berlaku jika ia adalah kaedah? Dengan mengisytiharkan kaedah sebagai statik, mesej adalah sama: kaedah yang berkaitan tidak termasuk kelas kelas tetapi kepada kelas itu sendiri. Akibatnya, kaedah statik tidak akan menerima rujukan tersembunyi untuk objek yang mereka panggil panggilan itu; dalam kaedah rujukan statik ini tidak tersedia. Sesungguhnya, kaedah inversi yang melintasi objek sama-sama mengelirukan sebagai mengakses pembolehubah statik dengan merujuk kepada rujukan ini: dalam kedua-dua kes, adalah lebih baik untuk hanya menulis nama kelas, titik, dan nama kaedah panggilan.

Perbezaan Antara Akhir dan Statik

  1. Pembolehubah

Statik bermaksud pemboleh ubah yang lazim bagi semua objek yang memberi instantiate kelas tertentu manakala akhir menentukan pemalar.

  1. Kaedah

Statik adalah satu kaedah yang sama bagi setiap objek yang diberikan kelas - juga dipanggil ahli kelas contohnya. seperti kaedah utama. Kaedah akhir tidak boleh diproses dalam kelas yang diwarisi.

  1. Kelas

Akhir tidak dapat diperluas, iaitu tidak membenarkan subkelas. Statik tidak digunakan untuk kelas.

  1. Nilai

Untuk meletakkannya secara ringkas, akhir menandakan bahawa nilai itu tidak boleh ditukar (menimpa). Nilai statik ditetapkan kepada nilai lalainya, tetapi boleh dikukuhkan semula.

Final vs Statik: Carta Perbandingan

Ringkasan Akhir dan Statik

  • Kerja utama statik menyediakan akses walaupun tiada objek (misalnya). Kelas-kelas yang terkenal diisytiharkan melalui perkataan utama statik. Jika anda tidak mahu nilai beberapa perubahan kemudian dalam program untuk pergi, atau jika anda mahu pengkompil untuk memeriksa dan melarang, anda boleh menukar janji itu ke final. Terdapat blok statik untuk permulaan. Blok statik untuk inisialisasi diisytiharkan sebagai statik utama di depan kurungan. Blok semacam ini dilakukan sekali, semasa kelas membaca, dan ia biasanya memulakan ahli-ahli statik kelas.