Kelas vs Objek
Dalam pengaturcaraan yang berorientasikan objek, class
adalah satu binaan yang mentakrifkan koleksi sifat dan kaedah. Anda boleh memikirkannya sebagai templat. Sebagai contoh,
Item kelas {public $ itemType; / * mis. ini boleh menjadi harga "Buku" atau "CD" * / harga awam; cetakan umum publicPrice () {echo "Harga ini {$ this-> itemType} adalah {$ this-> price} dollars."; }} $ catch22 = Item baru (); $ catch22-> itemType = "Book"; $ catch22-> price = 25; $ catch22-> printPrice (); / * output Harga Buku ini adalah 25 dolar. * / $ americanPrayer = Item baru (); $ americanPrayer-> itemType = "CD"; $ americanPrayer-> price = 22; $ americanPrayer-> printPrice (); / * output Harga CD ini ialah 22 dolar * /
Perhatikan bahawa dalam contoh ini, $ catch22 dan $ americanPrayer adalah 2 objek. Objek adalah contoh kelas. Mereka berkongsi struktur umum yang ditakrifkan oleh kelas. Struktur biasa ini terdiri daripada sifat-sifat ($ itemType dan $ harga dalam contoh di atas) dan kaedah (fungsi; printPrice () dalam contoh di atas) kelas. Walau bagaimanapun, sifat objek berbeza mungkin berbeza.
Dalam contoh di atas, harga dan jenis item berbeza untuk 2 objek kelas yang sama. Tetapi kedua-dua objek mempunyai kaedah cetakPrice (), harga hartanah dan itemType property yang boleh digunakan.
Carta perbandingan
Kelas | Objek | |
---|---|---|
Definisi | Kelas adalah mekanisme mengikat ahli data dan kaedah yang berkaitan dalam unit tunggal. | Contoh kelas atau pemboleh ubah kelas. |
Kewujudan | Ia adalah kewujudan logik | Ia adalah kewujudan fizikal |
Alokasi Memori | Ruang memori tidak diperuntukkan, apabila ia dibuat. | Ruang memori diperuntukkan, apabila ia diwujudkan. |
Perisytiharan / definisi | Definisi dibuat sekali sahaja. | ia dicipta banyak masa yang anda perlukan. |
Kes khas
Dalam beberapa bahasa pengaturcaraan, misalnya Python, semuanya adalah objek. Ini bermakna fungsi, pembolehubah, contoh kelas dan bahkan kelas sebenar dianggap sebagai objek oleh bahasa pengaturcaraan.