Sekarang, cara terbaik untuk belajar adalah dengan benar-benar melihat kode dalam tindakan, jadi cukup teori, mari kita membuat kode kelas
kita sendiri.
Saya akan menghapus semuanya dan memulai dari awal.
Dan katakanlah kita bekerja untuk sebuah perusahaan game dan perusahaan game ini memiliki semua game penyihir yang
ingin mereka buat, hampir seperti Harry Potter.
Sekarang, bagaimana kita bisa memikirkannya dan pemrograman berorientasi objek?
Nah, hal pertama yang kita perlukan adalah kita harus memiliki pemain yang menulis.
Setiap pemain memiliki karakter yang harus mereka mainkan.
Jadi mari kita buat kelas di sini dan beri nama player.
Sekali lagi, perhatikan konvensi penamaan karena ini adalah kelas.
Dan.
Aturan lain adalah bahwa biasanya Anda ingin menjadi tunggal, bukan jamak, jadi Anda tidak bisa mengatakan karakter pemain
karena maksud saya, itu adalah cetak biru dari cetak biru ini.
Kami akan membuat banyak karakter, tetapi itu akan menjadi objek.
Jadi karakter pemain, single in singular.
Sekarang, di sini, saya akan melakukan beberapa hal dan saya akan memperingatkan Anda, ini akan terlihat membingungkan pada
awalnya.
Tapi bertahanlah denganku.
Saya akan menjelaskannya.
Kami akan mendefinisikan garis bawah, garis bawah di dalamnya, garis bawah, garis bawah.
Sekarang di sini kita akan mengatakan diri.
Dan kemudian beri nama, nama karakter dari sini, kita akan melakukan Callon sekali lagi.
Dan cukup ucapkan nama Self Doc.
Setara dengan nama.
Oh, nak, apa yang baru saja terjadi di sini?
Sekali lagi, saya akan menunda menjelaskan apa fungsinya dan hanya menulis beberapa baris kode lagi sehingga
lebih masuk akal.
Saya akan menulis metode lain di sini dan saya akan mendefinisikan, katakanlah, metode run yang dapat dijalankan
oleh setiap pemain di sini.
Saya akan sekali lagi memiliki kata diri yang aneh ini dan kemudian hanya di dalam sini, katakanlah cetak.
Ron.
Baiklah, jadi saya baru saja membuat kelas ini, masih agak membingungkan, kita tidak benar-benar tahu apa
yang ada di dalamnya, apa diri dan tampilan baru ini.
Tapi mari kita abaikan itu sebentar dan katakan saja.
Pemain.
Seseorang akan menyamai karakter pemain dan membuat instance pemain itu.
Sehingga kita bisa mencetak player dan melihat ada apa dengan player ini.
Jika saya klik, jalankan.
Baiklah, saya mendapatkan kesalahan, ini salah ketik, kata INET kehilangan satu nama argumen posisi yang diperlukan.
Baiklah, mari kita istirahat di sini dan melihat apa yang terjadi di sini.
Anda melihat inet ini.
Metode adalah metode khusus.
Anda melihat dua garis bawah di sini.
Ini disebut metode Dundar atau metode ajaib, dan kami akan memiliki video khusus tentang ini.
Tapi ketika kita sedang membangun sebuah kelas, Anda biasanya melihat ini di atas.
Dan inilah yang sering disebut dengan metode konstruktor atau metode init.
Dan ini secara otomatis dingin setiap kali kita membuat instance.
Ingat, instantiate artinya kita memanggil kelas untuk membuat objek.
Jadi ketika saya melakukan ini, itu akan secara otomatis menjalankan apa pun yang ada di blok kode ini.
Jadi ketika saya menjalankan ini, Anda melihat bahwa saya mendapatkan siaran online 9:00 di sini pada baris sembilan dan
ketika saya mencoba untuk menginstansiasi karakter pemain.
Itu berjalan di dalamnya dan kemudian mencoba untuk membuat nama otodidak sama dengan nama, tetapi masalahnya adalah saya
tidak memberikannya ke nama argumen, dan itu karena ketika kami memanggilnya, kami menerima apa pun yang ada setelah
diri sebagai parameternya.
Berarti kita perlu memberikan nama karakter ini, jadi misalkan namanya Cindy, kalau saya klik run here.
Baiklah.
Sepertinya saya memiliki karakter pemain, dan faktanya, itu bahkan menunjukkan kepada saya bahwa itu adalah
objek di lokasi memori ini.
Jadi di komputer kita, di sinilah player, character, player one berada.
Sekarang, sangat keren, tetapi untuk apa kata kunci mandiri ini dan untuk apa kode ini online?
Ini adalah cara bagi kita untuk mendefinisikan apa diri diri mengacu pada karakter pemain, dikatakan, hei, ini akan merujuk pada karakter
pemain yang akan kita buat.
Pemain satu, dan saya ingin nama menipu diri sendiri sama dengan apa pun nama parameternya.
Sehingga jika saya memainkan nama putrinya di sini dan saya klik lari.
Saya mendapatkan Cindy dan mengapa Cindy?
Yah, karena saya memberinya karakter pemain perimeter dan ketika saya membuatnya, saya melewati parameter
nama.
Parameter default adalah self ketika saya melakukannya di dalamnya.
Dan di kelas Anda melihat di sini bahwa default, selalu parameter pertama saat kita mendefinisikan metode
adalah self.
Dan sekarang saya memberikan nama saya untuk otodidak, hei, bagaimana jika saya menghapus ini di sini dan saya klik jalankan?
Anda melihat bahwa dikatakan Obyek tidak memiliki nama atribut.
Karena untuk saya katakan, hei, saya ingin pemain memiliki nama, saya harus mengatakan otodidak karena diri
mengacu pada pemain satu.
Jadi jika Anda ingat ketika kami memiliki daftar, kami harus melakukan DOT dan kemudian kami akan mengatakan, tambahkan apa yang ditulis seseorang
untuk menambahkan kode ini.
Dan dalam kode tambahan itu akan mengatakan titik diri.
Katakanlah tambahkan ke daftar dan diri mengacu pada apa pun di sebelah kiri titik.
Jadi cara ini memungkinkan kita untuk memiliki referensi ke sesuatu yang belum dibuat dalam kasus ini.
PEMAIN satu Dan beri tahu mereka bahwa, hei, ketika itu dibuat, ketika kita membuat
instance, maka saya ingin Anda memastikan bahwa Pemain satu memiliki atribut nama ini sehingga jika saya membuat pemain dan
pemain lain, Tom akan menjadi pemain.
Jika saya mencetak pemain untuk memberi nama dan saya klik jalankan.
Saya memiliki dua pemain berbeda dengan dua nama berbeda.
Saya dapat menggunakan potongan kode yang sama tetapi memiliki nilai yang berbeda karena self, setiap kali saya instantiate ini, mengacu
pada pemain pertama kali, kemudian pemain pertama kedua kali sekarang menjadi diri sendiri sebagai salah satu dari hal-hal itu.
Itu menjadi sangat, sangat sulit untuk dipahami.
Dan Anda mungkin perlu menonton video ini beberapa kali.
Tetapi kuncinya di sini harus jelas bagi Anda.
Artinya saya hanya bisa menulis kode sekali.
Ingat undian utama kami.
Saya tidak mengulanginya sendiri dan saya dapat membuatnya dinamis dengan mengatakan bahwa data yang akan kita buat untuk
objek akan menjadi dinamis dan akan berubah berdasarkan apa yang kita berikan.
Sehingga saya dapat membuat pemain yang berbeda dengan atribut yang berbeda.
Tapi tetap menggunakan kode yang sama.
Sekarang, saya dapat memiliki banyak hal di sini, saya dapat memiliki H, misalnya, dan
sekali lagi, saya dapat mengatakan usia otodidak sama dengan usia dan kemudian Cindy harus lulus, katakanlah 44 dan Thomas, 21.
Sehingga di sini sekali lagi, jika saya melakukan H.
Mereka akan memiliki atribut yang berbeda.
Jadi ingat, ini adalah atribut atau properti yang dimiliki objek ini dan Anda dapat mengaksesnya dengan melakukan
notasi titik dan kemudian mengakses properti itu sendiri.
Anda melihat bahwa saya tidak memiliki tanda kurung di sini karena ini bukan metode.
Itu tidak mengambil tindakan.
Itu hanya mengatakan, hei, saya ingin mengakses atribut ini.
Jika saya memberi titik di sini, editor saya akan memberi tahu saya dan kami akan memiliki simbol untuk, hei, Anda memiliki
akses ke atribut, usia, dan nama.
Dan sebenarnya, saya juga memiliki akses untuk menjalankan metode sehingga jika saya klik, jalankan.
Ingat, lari adalah metode, jadi saya mendapatkan metode terikat ini, tetapi tidak mencetak apa pun, tidak
mengambil tindakan.
Jadi kita harus sekali lagi menambahkan tanda kurung, tekan, jalankan.
Dan lihat itu, saya bisa berlari, lalu saya tidak mendapatkan apa-apa, lalu dua puluh satu, mengapa kita mendapatkan ini?
Bukan karena ingat ini adalah fungsi yang tidak mengembalikan apa pun ketika suatu fungsi tidak mengembalikan apa
pun.
Apa yang kita dapatkan?
Kami tidak mengerti.
Jadi mungkin saya bisa mengatakan kembali selesai jika saya mengklik, jalankan.
Ini dia.
Kami telah menjalankan Don satu.
Nah, satu hal terakhir sebelum saya mengakhiri video ini, hal yang menarik di sini adalah jika saya melakukan pemutar satu dan kemudian
pemutar dua dan saya mencetak ini dan saya klik jalankan.
Anda akan melihat bahwa saya mendapatkan karakter pemain.
Namun objek, masing-masing objek tersebut, pemain satu dan pemain dua adalah lokasi memori yang berbeda.
Jadi saya dapat menggunakan satu bagian kode, satu cetak biru untuk membuat banyak pemain, tetapi pemain ini
tidak sama.
Mereka diciptakan dari cetak biru yang sama, tetapi mereka hidup di tempat yang berbeda dalam memori.
Dan itu masuk akal, bukan?
Kami tidak ingin Tom dan Cindy menjadi pemain yang sama.
Mereka dua pemain yang berbeda.
Jadi dengan cara ini kita bisa menjaga semuanya tetap aman.
Dan apa pun yang saya tambahkan ke pemain dua, misalnya, katakanlah pemain dua sekarang bisa menyerang.
Dan serangan hanya akan menjadi properti yang akan menjadi 50 sekarang jika saya tidak menyerang di sini, Anda lihat pemain itu juga
memilikinya.
Serang, tetapi jika saya memainkan serangan Wyandotte.
Saya mendapatkan yang lain.
Objek tidak memiliki atribut serangan.
Saya harap Anda mulai melihat kekuatan kelas, meskipun mungkin sulit untuk dipahami pada
awalnya, kekuatan menjadi jelas ketika kita dapat membuat cetak biru yang sekarang dapat kita gunakan
berulang kali untuk membuat objek kita sendiri. .
Mari kita jelajahi lebih lanjut di video berikutnya.