peri hoki perihoki clarustologistics rimashaop.com pola taktis menang gates of olympus x1000 perihoki pemain perihoki bongkar trik jepep starlight princess x1000 perihoki beri panduan lengkap bermain mahjong ways 2 pgsoft tips cara penghasil uang pgsoft mahjong ways 2 perihoki mahjong wins 3 perihoki memberikan penggali terbesar fenomena gates of olympus buka peluang besar bagi duta76 cara dapat pola emas rahasia di duta7 wild west gold trik menang pgsoft mahjong ways 2 modal receh maxwin duta76 duta76 main pgsoft mahjong ways 2 di sela istirahat scatter hitam mahjong wins 3 spin pasti jepe duta76 pola petir tersembunyi gates of olympus perihoki pgsoft perkuat mahjong ways 2 di akun perihoki perihoki beri pola jitu mahjong wins 3 auto maxwin 5 scatter jackpot driver ojol strategi satpam scatter mahjong strategi menang mahjong abc1131 scatter emas pabrik wonosobo modal tipis scatter jadi cuan rtp mahjong ways supir menang insting kuat bermain mahjong ways mengungkap keunggulan mahjong ways serunya mahjong bermodal kecil untung melimpah strategi terbaik untuk menang mahjong terus main terus gacor menang banyak dengan scatter mahjong ways1 menggali kehebatan mahjong wins rahasia nurul di mahjong ways strategi mahjong yang mengubah permainan anda teknik menang mahjong ways yang efektif
A PHP Error was encountered
Severity: Warning
Message: ini_set(): Headers already sent. You cannot change the session module's ini settings at this time
Filename: Session/Session.php
Line Number: 282
Backtrace:
File: /home/blogchuabenh/domains/freetuts.net/public_html/site/controllers/Main_controller.php
Line: 10
Function: __construct
File: /home/blogchuabenh/domains/freetuts.net/public_html/sources/index.php
Line: 299
Function: require_once
File: /home/blogchuabenh/domains/freetuts.net/public_html/index.php
Line: 26
Function: require_once
A PHP Error was encountered
Severity: Warning
Message: session_set_cookie_params(): Cannot change session cookie parameters when headers already sent
Filename: Session/Session.php
Line Number: 294
Backtrace:
File: /home/blogchuabenh/domains/freetuts.net/public_html/site/controllers/Main_controller.php
Line: 10
Function: __construct
File: /home/blogchuabenh/domains/freetuts.net/public_html/sources/index.php
Line: 299
Function: require_once
File: /home/blogchuabenh/domains/freetuts.net/public_html/index.php
Line: 26
Function: require_once
A PHP Error was encountered
Severity: Warning
Message: ini_set(): Headers already sent. You cannot change the session module's ini settings at this time
Filename: Session/Session.php
Line Number: 304
Backtrace:
File: /home/blogchuabenh/domains/freetuts.net/public_html/site/controllers/Main_controller.php
Line: 10
Function: __construct
File: /home/blogchuabenh/domains/freetuts.net/public_html/sources/index.php
Line: 299
Function: require_once
File: /home/blogchuabenh/domains/freetuts.net/public_html/index.php
Line: 26
Function: require_once
A PHP Error was encountered
Severity: Warning
Message: ini_set(): Headers already sent. You cannot change the session module's ini settings at this time
Filename: Session/Session.php
Line Number: 314
Backtrace:
File: /home/blogchuabenh/domains/freetuts.net/public_html/site/controllers/Main_controller.php
Line: 10
Function: __construct
File: /home/blogchuabenh/domains/freetuts.net/public_html/sources/index.php
Line: 299
Function: require_once
File: /home/blogchuabenh/domains/freetuts.net/public_html/index.php
Line: 26
Function: require_once
A PHP Error was encountered
Severity: Warning
Message: ini_set(): Headers already sent. You cannot change the session module's ini settings at this time
Filename: Session/Session.php
Line Number: 315
Backtrace:
File: /home/blogchuabenh/domains/freetuts.net/public_html/site/controllers/Main_controller.php
Line: 10
Function: __construct
File: /home/blogchuabenh/domains/freetuts.net/public_html/sources/index.php
Line: 299
Function: require_once
File: /home/blogchuabenh/domains/freetuts.net/public_html/index.php
Line: 26
Function: require_once
A PHP Error was encountered
Severity: Warning
Message: ini_set(): Headers already sent. You cannot change the session module's ini settings at this time
Filename: Session/Session.php
Line Number: 316
Backtrace:
File: /home/blogchuabenh/domains/freetuts.net/public_html/site/controllers/Main_controller.php
Line: 10
Function: __construct
File: /home/blogchuabenh/domains/freetuts.net/public_html/sources/index.php
Line: 299
Function: require_once
File: /home/blogchuabenh/domains/freetuts.net/public_html/index.php
Line: 26
Function: require_once
A PHP Error was encountered
Severity: Warning
Message: ini_set(): Headers already sent. You cannot change the session module's ini settings at this time
Filename: Session/Session.php
Line Number: 317
Backtrace:
File: /home/blogchuabenh/domains/freetuts.net/public_html/site/controllers/Main_controller.php
Line: 10
Function: __construct
File: /home/blogchuabenh/domains/freetuts.net/public_html/sources/index.php
Line: 299
Function: require_once
File: /home/blogchuabenh/domains/freetuts.net/public_html/index.php
Line: 26
Function: require_once
A PHP Error was encountered
Severity: Warning
Message: ini_set(): Headers already sent. You cannot change the session module's ini settings at this time
Filename: Session/Session.php
Line Number: 375
Backtrace:
File: /home/blogchuabenh/domains/freetuts.net/public_html/site/controllers/Main_controller.php
Line: 10
Function: __construct
File: /home/blogchuabenh/domains/freetuts.net/public_html/sources/index.php
Line: 299
Function: require_once
File: /home/blogchuabenh/domains/freetuts.net/public_html/index.php
Line: 26
Function: require_once
A PHP Error was encountered
Severity: Warning
Message: ini_set(): Headers already sent. You cannot change the session module's ini settings at this time
Filename: drivers/Session_files_driver.php
Line Number: 108
Backtrace:
File: /home/blogchuabenh/domains/freetuts.net/public_html/site/controllers/Main_controller.php
Line: 10
Function: __construct
File: /home/blogchuabenh/domains/freetuts.net/public_html/sources/index.php
Line: 299
Function: require_once
File: /home/blogchuabenh/domains/freetuts.net/public_html/index.php
Line: 26
Function: require_once
A PHP Error was encountered
Severity: Warning
Message: session_set_save_handler(): Cannot change save handler when headers already sent
Filename: Session/Session.php
Line Number: 110
Backtrace:
File: /home/blogchuabenh/domains/freetuts.net/public_html/site/controllers/Main_controller.php
Line: 10
Function: __construct
File: /home/blogchuabenh/domains/freetuts.net/public_html/sources/index.php
Line: 299
Function: require_once
File: /home/blogchuabenh/domains/freetuts.net/public_html/index.php
Line: 26
Function: require_once
A PHP Error was encountered
Severity: Warning
Message: session_start(): Cannot start session when headers already sent
Filename: Session/Session.php
Line Number: 143
Backtrace:
File: /home/blogchuabenh/domains/freetuts.net/public_html/site/controllers/Main_controller.php
Line: 10
Function: __construct
File: /home/blogchuabenh/domains/freetuts.net/public_html/sources/index.php
Line: 299
Function: require_once
File: /home/blogchuabenh/domains/freetuts.net/public_html/index.php
Line: 26
Function: require_once
Xây dựng một lớp Zoo để quản lý các đối tượng Animal trong TyprScript.
TYPESCRIPT 2.X CĂN BẢN
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
Xây dựng một lớp Zoo để quản lý các đối tượng Animal trong TyprScript.
Trong bài viết này sẽ xây dựng một lớp Zoo
để quản lý các đối tượng Animal. Zoo
sẽ có khả năng thêm đối tượng Animal
vào danh sách của nó và in ra âm thanh mà mỗi đối tượng Animal trong Zoo kêu.
Lưu ý: Trong bài này, mình sẽ kết hợp các khái niệm về lớp, mảng, và phương thức để quản lý và tương tác với các đối tượng.
Xác định lớp Animal và lớp Zoo
Bắt đầu với việc định nghĩa lớp Animal và lớp Zoo trong TypeScript.
class Animal {
makeSound(): void {
// Để bổ sung sau
}
}
class Zoo {
animals: Animal[] = [];
addAnimal(animal: Animal): void {
this.animals.push(animal);
}
makeSounds(): void {
for (const animal of this.animals) {
animal.makeSound();
}
}
}
Thêm đối tượng Animal vào Zoo
Tiếp theo, mình sẽ tạo một số đối tượng Animal
và thêm chúng vào Zoo
.
// Tạo một Zoo mới
const myZoo = new Zoo();
// Thêm các đối tượng Animal vào Zoo
myZoo.addAnimal(new Dog());
myZoo.addAnimal(new Cat());
myZoo.addAnimal(new Bird());
Định nghĩa lại phương thức makeSound() cho mỗi loài động vật
Mình cần định nghĩa lại phương thức makeSound()
trong mỗi lớp động vật cụ thể để chúng có thể phát ra âm thanh đặc trưng.
class Dog extends Animal {
makeSound(): void {
console.log("Gâu gâu!"); // Kêu của chó
}
}
class Cat extends Animal {
makeSound(): void {
console.log("Meo meo!"); // Kêu của mèo
}
}
class Bird extends Animal {
makeSound(): void {
console.log("Chích chòe!"); // Kêu của chim
}
}
Gọi phương thức makeSounds() từ Zoo
Cuối cùng,mình mình sẽ gọi phương thức makeSounds()
từ Zoo để nghe âm thanh mà mỗi đối tượng Animal trong Zoo kêu.
Kết quả
Trong mã lệnh trên, mình đã xây dựng lớp Zoo để quản lý các đối tượng Animal. Mỗi đối tượng Animal được thêm vào Zoo, và khi gọi phương thức makeSounds()
,mình nhận được âm thanh đặc trưng của từng loài động vật:
Gâu gâu!
Meo meo!
Chích chòe!
Chương trình này minh họa sức mạnh của tính đa dạng và kế thừa trong lập trình hướng đối tượng. Nó cho phép mình quản lý và tương tác với các đối tượng khác nhau một cách dễ dàng và linh hoạt trong TypeScript.
Bài giải
-------------------- ######## --------------------
Câu hỏi thường gặp liên quan:
Cùng chuyên mục: