Kaedah Statik lwn Bukan Statik
Kaedah ialah satu siri pernyataan yang dijalankan untuk melaksanakan tugas tertentu. Kaedah boleh mengambil input dan menghasilkan output. Kaedah statik dan bukan statik ialah dua jenis kaedah yang terdapat dalam bahasa pengaturcaraan berorientasikan objek. Kaedah statik ialah kaedah yang dikaitkan dengan kelas. Kaedah yang dikaitkan dengan objek dipanggil kaedah bukan statik (contoh). Dalam bahasa berorientasikan objek, kaedah digunakan sebagai mekanisme untuk beroperasi pada data yang disimpan dalam objek.
Apakah Kaedah Statik?
Dalam pengaturcaraan berorientasikan objek, kaedah statik ialah kaedah yang dikaitkan dengan kelas. Oleh itu, kaedah statik tidak mempunyai keupayaan untuk beroperasi pada contoh tertentu kelas. Kaedah statik boleh digunakan tanpa menggunakan objek kelas yang mengandungi kaedah statik. Berikut ialah contoh mentakrifkan kaedah statik di Jawa. Statik perlu digunakan semasa mentakrifkan kaedah statik dalam Java.
kelas awam MyClass { public static void MyStaticMethod() { // kod kaedah statik }
}
Kaedah statik yang ditakrifkan di atas boleh dipanggil seperti berikut menggunakan nama kelas yang dimilikinya.
MyClass. MyStaticMethod();
Satu perkara penting yang perlu diberi perhatian ialah kaedah statik hanya boleh mengakses ahli statik.
Apakah itu Kaedah Tidak Statik?
Kaedah bukan statik atau kaedah contoh ialah kaedah yang dikaitkan dengan objek dalam kelas. Oleh itu, kaedah bukan statik dipanggil menggunakan objek kelas di mana kaedah itu ditakrifkan. Kaedah bukan statik boleh mengakses ahli bukan statik serta ahli statik kelas. Dalam banyak bahasa berorientasikan objek (seperti C++, C, Java), apabila kaedah bukan statik dipanggil, objek yang menggunakan kaedah tersebut diluluskan sebagai hujah tersirat (ia dipanggil rujukan 'ini'). Jadi, di dalam kaedah kata kunci ini boleh digunakan untuk merujuk kepada objek yang dipanggil kaedah. Berikut ialah contoh mentakrifkan kaedah contoh dalam Java.
kelas awam MyClass { public void MyInstanceMethod() { // kod kaedah contoh }
}
Kaedah contoh yang ditakrifkan di atas boleh dipanggil seperti berikut menggunakan objek kelas yang dimilikinya.
MyClass objMyClass=MyClass();
objMyClass. MyInstanceMethod ();
Apakah perbezaan antara Kaedah Statik dan Bukan Statik?
Kaedah statik ialah kaedah yang dikaitkan dengan kelas, manakala kaedah bukan statik ialah kaedah yang dikaitkan dengan objek kelas. Kelas perlu digunakan dahulu untuk menggunakan kaedah bukan statik, tetapi kaedah statik tidak mempunyai keperluan ini. Mereka hanya boleh dipanggil menggunakan nama kelas yang memegang kaedah statik. Satu lagi perbezaan penting ialah kaedah bukan statik biasanya mempunyai rujukan kepada objek yang dipanggil kaedah dan ia boleh diakses menggunakan kata kunci ini di dalam kaedah. Tetapi kata kunci ini tidak boleh digunakan dalam kaedah statik kerana ia tidak dikaitkan dengan objek tertentu.