Kaedah Statik vs Tidak Statik
Kaedah adalah rangkaian pernyataan yang dijalankan untuk melaksanakan tugas tertentu. Kaedah boleh mengambil input dan menghasilkan output. Kaedah statik dan bukan statik adalah dua jenis kaedah yang terdapat dalam bahasa pengaturcaraan berorientasikan objek. Kaedah statik adalah kaedah yang dikaitkan dengan kelas. Kaedah yang dikaitkan dengan objek disebut kaedah nonstatis (contoh). Dalam bahasa berorientasi objek, kaedah digunakan sebagai mekanisme untuk beroperasi pada data yang disimpan dalam objek.
Apakah Kaedah Statik?
Dalam pengaturcaraan berorientasikan objek, kaedah statik adalah kaedah yang dikaitkan dengan kelas. Oleh itu, kaedah statik tidak mempunyai keupayaan untuk beroperasi pada contoh kelas tertentu. Kaedah statik boleh dipanggil tanpa menggunakan objek kelas yang mengandungi kaedah statik. Berikut adalah contoh mendefinisikan kaedah statik di Java. Statik harus digunakan ketika menentukan kaedah statik di Java.
kelas awam MyClass {public static void MyStaticMethod () {// kod kaedah statik}
}
Kaedah statik yang dinyatakan di atas boleh dipanggil sebagai berikut dengan menggunakan nama kelas yang menjadi miliknya.
MyClass. MyStaticMethod ();
Satu perkara penting yang perlu diperhatikan ialah kaedah statik hanya dapat mengakses anggota statik.
Apakah Kaedah Bukan Statik?
Kaedah tidak statik atau kaedah contoh adalah kaedah yang dikaitkan dengan objek dalam kelas. Oleh itu, kaedah bukan statik dipanggil menggunakan objek kelas di mana kaedah itu ditentukan. Kaedah tidak statik boleh mengakses ahli bukan statik dan juga ahli statik kelas. Dalam banyak bahasa berorientasi objek (seperti C ++, C #, Java), ketika disebut metode non-statis, objek yang menggunakan metode tersebut dilewatkan sebagai argumen tersirat (disebut rujukan 'ini'). Jadi, di dalam kaedah kata kunci ini dapat digunakan untuk merujuk pada objek yang disebut kaedah. Berikut adalah contoh mendefinisikan kaedah contoh di Java.
kelas awam MyClass {public void MyInstanceMethod () {// kod kaedah contoh}
}
Kaedah contoh yang ditentukan di atas dapat disebut sebagai berikut dengan menggunakan objek kelas yang menjadi miliknya.
MyClass objMyClass = MyClass baru ();
objMyClass. MyInstanceMethod ();
Apakah perbezaan antara Kaedah Statik dan Bukan Statik?
Kaedah statik adalah kaedah yang dikaitkan dengan kelas, sedangkan kaedah bukan statik adalah kaedah yang dikaitkan dengan objek kelas. Kelas perlu dibuat terlebih dahulu untuk menggunakan kaedah bukan statik, tetapi kaedah statik tidak mempunyai syarat ini. Mereka hanya boleh dipanggil menggunakan nama kelas yang memegang kaedah statik. Perbezaan penting lain ialah kaedah bukan statik biasanya mempunyai rujukan ke objek yang memanggil kaedah dan dapat diakses menggunakan kata kunci ini di dalam kaedah tersebut. Tetapi kata kunci ini tidak boleh digunakan dalam kaedah statik kerana kata kunci ini tidak dikaitkan dengan objek tertentu.