‫Dalam video terakhir, Anda belajar tentang pewarisan dan dasar-dasar pewarisan, tetapi sekarang
‫mari kita selami lebih dalam dan melihat beberapa kata kunci yang akan relevan dalam hal pewarisan.
‫Dan yang akan kita lihat adalah virtual dan kata kunci override.
‫Sekarang, Anda mungkin bertanya-tanya, mengapa ada hewan di sini di layar?
‫Mengapa ini menunjukkan banyak gambar binatang?
‫Nah, masalahnya, kita akan menerapkan kelas hewan yang kemudian akan memungkinkan kita untuk mewarisi
‫dari hewan akan menjadi kelas induk, yang memiliki beberapa keterampilan, seperti apa yang bisa dilakukan hewan?
‫Itu bisa membuat suara, bisa makan dan bisa bermain.
‫Setidaknya itulah yang akan kita izinkan untuk dilakukan oleh kelas hewan.
‫Dan tentu saja, seekor binatang dapat melakukan lebih banyak lagi.
‫Kami akan memberikan beberapa properti seperti nama properti The Age, lalu jika lapar, misalnya.
‫Jadi hanya jika dia lapar, dia akan makan, jika tidak dia tidak akan makan.
‫Jadi itulah ide untuk membuat kelas hewan.
‫Dan sekarang Anda bisa, tentu saja, melanjutkan dan mengimplementasikan kelas ini sendiri.
‫Dan kemudian kita akan menggunakan pewarisan untuk tidak hanya menggunakan metode yang sama dan properti
‫yang sama, tetapi juga mengesampingkannya, pada dasarnya mengatakan, Oke, suara yang dibuat oleh seekor binatang adalah seekor anjing akan berbeda
‫dengan suaranya. itu, misalnya, kera membuat atau kera membuat atau jerapah membuat atau
‫semacamnya.
‫OK, jadi ini pada dasarnya apa yang akan kita terapkan.
‫Dan dengan melakukan itu, kita akan mempelajari kata kunci yang berbeda seperti virtual dan kata kunci override.
‫Jadi mari kita keluar dan membuat proyek baru untuk ini.
‫Saya akan menggunakan aplikasi konsol.
‫Saya akan menyebutnya demo penggantian virtual.
‫Baiklah.
‫Sebagai sedikit tantangan bagi Anda, jika Anda ingin mencobanya sendiri, silakan tulis kelas
‫yang akan disebut hewan dan akan memiliki sifat bernama umur lapar.
‫Kemudian, tentunya konstruktor, kemudian sebuah metode disebut membuat suara, makan sekaligus bermain.
‫Oke, jadi mungkin terapkan semua itu jika Anda mau, karena ini hanya akan memberi Anda sedikit
‫latihan untuk membuat semua metode yang berbeda ini.
‫Dan kemudian kita akan melihat bagaimana mengubahnya sedikit sehingga kita dapat menggunakannya dengan benar dalam pewarisan.
‫Baiklah, jadi saya harap Anda mencobanya, oleh karena itu, tentu saja, kita dapat menggunakan Casey yang dikontrol untuk membuat kelas baru
‫dan saya akan memanggil hewan yang satu ini.
‫Seperti itu dan sekarang kelas hewan ini akan memiliki beberapa properti, seperti yang saya katakan,
‫jadi nama properti, properti, serta properti laparnya, dan kemudian konstruktor sederhana yang menggunakan semua properti ini, Anda dapat melihat
‫kita hanya menggunakan GetSet.
‫Omong-omong, jika Anda ingin membuat properti dengan sangat cepat, cukup masukkan prop double tap lalu masukkan
‫jenisnya, misalnya string, lalu di sini, misalnya, nama.
‫Jadi begitulah cara Anda melakukannya dengan sangat cepat, tidak perlu mengetik lebih dari yang diperlukan.
‫Baiklah.
‫Jadi ini akan menjadi konstruktor kami di sini dengan nama The Age dan the lapar dan Anda dapat
‫melihat bahwa lapar bukanlah sesuatu yang akan kita atur ke hewan setelah kita membuatnya, tapi
‫kita akan menyetelnya ke menggambar di awal secara default.
‫Jadi saya hanya mengaturnya ke default lapar.
‫OK, jadi sekarang saya mengatakan bahwa saya ingin memiliki metode yang disebut membuat suara.
‫Jadi mari kita lihat metode ini.
‫Jadi saya menggunakan metode virtual kosong, buat suara untuk ditimpa oleh kelas lain.
‫Saya membuat metode ini virtual sehingga dapat ditimpa oleh kelas yang mewarisi dari hewan.
‫Dan kita akan melihat nanti bagaimana melakukannya karena suara yang dihasilkan hewan akan sangat bergantung pada
‫hewan itu sendiri.
‫Jadi lapar adalah sesuatu yang dialami setiap hewan karena, begitulah fungsi kita.
‫Kita membutuhkan energi dan kita mendapatkannya melalui makanan.
‫Dan untuk memotivasi diri kita sendiri untuk mendapatkan makanan atau makan, kita memiliki rasa lapar.
‫Tetapi metode virtual yang kami miliki di sini memang membuat suara tidak harus kosong.
‫Jadi mari kita lihat metode makan ini di sini.
‫Dan metode makan ini juga akan menjadi metode virtual.
‫Ini memungkinkan subclass kami untuk mengganti metode ini.
‫Jadi jika kita ingin mengganti metodenya, kita bisa melakukannya, tetapi kita tidak harus melakukannya.
‫Fungsionalitas umum akan menjadi yang dapat Anda lihat di sini.
‫Jadi itu akan memeriksa apakah hewan itu lapar.
‫Jika ya, maka itu hanya akan mencetak nama dan mengatakan bahwa itu sedang makan dan kemudian jika tidak lapar,
‫itu akan mengatakan nama tidak lapar.
‫Omong-omong, namanya adalah milik hewan kita.
‫Jadi ini nama properti hewan.
‫Oke, jadi itu akan menjadi metode makan kita dan kita juga akan membuatnya virtual.
‫Dan kemudian metode virtual lain yang akan dimainkan.
‫Oke, jadi metode virtual seperti ini yang pada dasarnya akan mengatakan bahwa nama sedang diputar di konsol.
‫Sekarang kita menggunakan beberapa pernyataan garis kanan yang sangat sederhana, ini tentu saja bisa menjadi jauh lebih kompleks.
‫Oke, jadi ini hanya untuk menyederhanakan semuanya dan membuatnya lebih bisa dipahami secara manusiawi, bisa dibilang, karena bermain
‫dan makan dan sebagainya, ini adalah sesuatu yang bisa langsung kita pahami karena kita telah
‫melihatnya dalam hidup kita dan kita telah melakukannya diri kita sendiri, serta membaca data dari database atau
‫semacamnya.
‫Itu bukan sesuatu yang biasa kita lihat di kehidupan nyata.
‫Oke.
‫Baiklah.
‫Jadi sekarang mari kita definisikan kelas kita yang akan diturunkan dari hewan, sehingga akan mewarisi dari kelas hewan.
‫Jadi mari kita lanjutkan dan gunakan kontrol K dan lihat mata uang kita bersama.
‫Dan ini kemudian akan membuka layar di mana kita kemudian dapat membuat kelas atau sebagai alternatif hanya
‫membuat kelas.
‫Jika tidak, jadi saya akan membuat kelas anjing dan kelas ini akan mewarisi dari hewan seperti itu.
‫Sekarang, Anda sudah dapat melihat bahwa tidak ada argumen yang diberikan yang sesuai dengan nama parameter formal
‫yang diperlukan dari string nama hewan.
‫Jadi kita perlu membuat konstruktor di sini.
‫Jadi mari kita lanjutkan dan buat konstruktor sederhana, yang akan mengikuti struktur yang sama.
‫Itu akan memiliki nama dan umur dan akan menggunakan nama dasar dengan baik sehingga kita dapat menggunakan konstruktor yang sama dengan yang kita
‫definisikan pada hewan itu.
‫Jadi sekarang saya akan menggunakan properti baru yang disebut Abie atau happy dan ini akan menjadi boolean.
‫Ini pada dasarnya hanya akan disimpan jika hewan dalam hal ini, anjingnya senang.
‫Jadi akan dikatakan benar jika anjing itu bahagia dan anjing adalah hewan yang bahagia.
‫Jadi secara default, anjing akan senang.
‫Baiklah.
‫Sekarang mari kita override metode ITW.
‫Oke, jadi mari kita override metode virtual, eat, dan karena itu kita menggunakan kata kunci override ini.
‫Oke, jadi kebaikan publik, seperti metode normal, tapi kami menambahkan keyboard pengganti ini.
‫Jadi override void ITW dua atau mirip dengan yang kami miliki di sini di mana kami juga memiliki metode ini.
‫Tapi di sini kami menggunakan keyboard virtual.
‫Jadi keyboard virtual ini memungkinkan subclass kami, kelas turunan kami dari anak-anak, untuk menggunakan kata
‫override yang pada dasarnya mengesampingkan fungsionalitasnya.
‫Jika Anda ingin tetap memanggil fungsionalitas dasar dari kelas induk dari kelas hewan, dalam hal
‫ini, kita perlu menggunakan DOT berbasis makan OK, basis akan mengatakan OK disebut metode basis dan basis akan baik Anda lihat
‫di sini satwa.
‫Jadi setelah Anda Klik dua kali pada basis dan disorot, Anda dapat melihat hewan itu juga disorot karena
‫hewan adalah kelas dasar Anda.
‫Jika Anda menyimpan tombol kontrol HELT dan Anda mengklik basis itu akan melompat ke kelas hewan karena
‫itulah kelas dasar.
‫Dan Anda bisa melihat ada tiga referensi dari kelas dasar kami dan itu ada di sini, pangkalan ini, serta pangkalan
‫ini dan hewan ini di sini di atas.
‫OK, jadi pada titik ini kami pada dasarnya menggunakan kelas dasar kami di sini, fungsionalitas kelas dasar.
‫Kami tidak mengesampingkan apa pun.
‫Jadi pada dasarnya kami mengatakan bahwa seekor anjing memiliki cara yang sama dengan hewan lainnya.
‫Jadi tidak ada yang istimewa di sini.
‫Sekarang, mari kita lihat metode membuat suara, karena yang ini akan sangat berbeda karena
‫anjing harus membuat suara dengan benar dan caranya membuat suara akan menjadi guk.
‫Bisa juga guk atau siapa untuk apa.
‫Namun, anjing Anda suka membuat suara.
‫Dan ini adalah bagaimana dalam kasus saya, anjing akan mengeluarkan suara.
‫Jadi ini akan berbeda untuk setiap hewan.
‫OK, jadi setiap hewan akan membuat perbedaan.
‫Dan itulah mengapa kami mengesampingkan suara kami.
‫Yah, dengan baik, ini mungkin terdengar seperti yang kami miliki di sini, kami menimpanya dengan implementasi individu kami untuk
‫anjing kami.
‫Dan sekarang mari kita lakukan hal yang sama dengan bermain, karena anjing hanya ingin bermain jika dia senang, jadi
‫anggap saja begitu.
‫Jadi di sini, jika kita melihat permainan, dikatakan anjing sedang bermain, tapi saya tidak senang dengan hasil ini.
‫Katakanlah seekor anjing hanya akan bermain jika itu adalah anjing yang bahagia.
‫Jadi yang bisa kita lakukan adalah mengesampingkan permainan kata dan memeriksa apakah anjing itu senang dan baru kemudian bermain.
‫Jadi kami telah menimpa fungsionalitas dasar hewan dengan fungsionalitas.
‫Nah, dengan fungsi kami sendiri untuk anjing atau fungsi unik kami untuk anjing tempat kami menambahkan
‫kondisi.
‫Tapi ini bisa apa saja.
‫Anda tidak terbatas pada suatu kondisi.
‫Ini bisa menjadi jenis implementasi yang sama sekali berbeda.
‫Anda bahkan tidak perlu menggunakan permainan dasar, jadi Anda benar-benar bebas menggunakan apa pun yang Anda inginkan.
‫Misalnya, dalam metode make sound, Anda dapat melihat kami tidak menggunakan base make sound karena, nah, dalam
‫metode make sound, tidak ada yang dipanggil.
‫Jadi tidak ada yang menarik di sini.
‫Tapi kalaupun ada, kita tidak perlu memanggil base make out atau base play.
‫Kita bisa menerapkan sesuatu yang sama sekali berbeda di sini jika kita mau.
‫OK, jadi itu akan menjadi anjing kita.
‫Sekarang mari kita lanjutkan dan simpan kedua kelas tersebut dan bekerja dengan mereka dalam file CSS program kita.
‫Oke, jadi ini pertama-tama, buat seperti anjing jadi saya akan memanggil anjing itu, yang akan menjadi
‫anjing baru.
‫Yang akan memiliki nama Siff dan anjing itu akan berusia 50 tahun, anjing yang sangat tua dan sekarang.
‫Kita bisa menulis sesuatu seperti agar kita bisa mengakses properti anjing seperti jadi garis merah, nama
‫anjing, sehingga kita bisa mendapatkan nama anjing dan umur anjing menggunakan dog, dog name dan dog dot h.
‫Dan kemudian kita bisa, misalnya, bermain dan makan.
‫Oke, ayo lakukan dengan cepat, bermain anjing, makan anjing.
‫Jadi mari kita jalankan ini.
‫Dan kita bisa melihat warga, 15 tahun, peselancar bermain, peselancar makan.
‫OK, jadi mainkan dan itu bekerja dengan sangat baik.
‫Tentu saja, kita juga bisa menggunakan obat.
‫Dan membuat suara.
‫Jadi ini akan membuat suara anjing.
‫Mari kita jalankan ini.
‫Dan Anda melihat stok mengatakan kotak.
‫Baiklah.
‫Jadi mari kita cepat rekap dan melihat bagaimana ini berbeda dengan contoh yang kita miliki
‫di video terakhir, jadi kita memiliki kelas dasar dan kelas dasarnya memiliki beberapa properti, dan juga memiliki beberapa
‫metode fungsi, jadi berbicara.
‫Jadi di sini untuk membuat suara, misalnya, metode AED dan sebagainya, dan kami
‫membuatnya virtual dengan menambahkan kata kunci virtual untuk membuatnya berubah atau terlalu bersemangat di kelas pewarisan.
‫Jadi Dogs tidak mewarisi kelas atau subkelas, dan subkelas ini sekarang memungkinkan kita untuk menimpa metode tertentu dari
‫kelas dasar menggunakan kata kunci override.
‫Jadi sekarang.
‫Timpa fungsionalitas sehingga akan menggantikan fungsi atau kode metode saat ini, kecuali Anda, tentu saja,
‫menggunakan ruang yang masing-masing.
‫Jadi apa yang akan dilakukan adalah pada dasarnya hanya akan memanggil metode makan dari kelas dasar, yang berarti dari
‫induknya.
‫Tetapi Anda bebas mengimplementasikan kode Anda sendiri di sini.
‫Anda tidak perlu memanggil kelas dasar.
‫Anda tentu saja dapat menambahkan kondisi sehingga fungsionalitas kelas dasar akan dipanggil dalam kondisi
‫tertentu.
‫Atau Anda dapat menulis kode apa pun yang Anda inginkan di dalam metode penimpaan Anda dan kemudian sesuatu yang lain
‫berbeda.
‫Dan itu adalah bahwa kami menambahkan kode ke konstruktor kami di sini untuk kami.
‫Subklausa, OK, jadi anjing kelas pewarisan ini.
‫Apakah di satu sisi menggunakan properti yang sama dengan yang digunakan kelas dasar kami, tetapi pada saat yang sama
‫memiliki implementasi sendiri, apa yang akan terjadi setelah seekor anjing dibuat?
‫Jadi begitu objek anjing dibuat dan dalam kasus kami, itu hanya untuk mengatakan bahwa anjing itu akan bahagia.
‫Baiklah, itu saja untuk video ini, kita akan melihat lebih banyak tentang warisan, tentu saja, karena masih
‫banyak yang harus dipelajari.
‫Jadi sampai jumpa di video selanjutnya.