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
Tạo một lớp Shape và phương thức để tính diện tích,chu vi của hình vuông trong TypeScript.
TYPESCRIPT 2.X CĂN BẢN
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
Tạo một lớp Shape và phương thức để tính diện tích,chu vi của hình vuông trong TypeScript.
Lập trình hướng đối tượng là một khía cạnh quan trọng trong việc xây dựng ứng dụng phần mềm. Trong TypeScript, mình có thể tận dụng tính kế thừa và đa hình để tạo ra các lớp và đối tượng một cách linh hoạt và hiệu quả. Trong bài viết này, mình sẽ tạo một lớp Shape
và lớp con của nó là Square
, với mục tiêu tính toán diện tích và chu vi của hình vuông.
Lớp Shape và Lớp Square
class Shape {
protected side: number;
constructor(side: number) {
this.side = side;
}
public getArea(): number {
return 0; // Hàm này sẽ được ghi đè bởi lớp Square
}
public getPerimeter(): number {
return 0; // Hàm này sẽ được ghi đè bởi lớp Square
}
}
class Square extends Shape {
constructor(side: number) {
super(side);
}
public getArea(): number {
return this.side * this.side;
}
public getPerimeter(): number {
return 4 * this.side;
}
}
Giải thích lớp Shape và lớp Square:
Lớp Shape: Định nghĩa một thuộc tính bảo vệ (protected) side để lưu độ dài cạnh. Nó cũng cung cấp hai phương thức getArea()
và getPerimeter()
mà lớp con có thể ghi đè.
Lớp Square (lớp con của Shape): Kế thừa từ lớp Shape và cài đặt phương thức getArea()
và getPerimeter()
để tính diện tích và chu vi của hình vuông.
Sử dụng Square
const square = new Square(5);
console.log('Diện tích hình vuông:', square.getArea()); // Kết quả: Diện tích hình vuông: 25
console.log('Chu vi hình vuông:', square.getPerimeter()); // Kết quả: Chu vi hình vuông: 20
Kết quả sẽ hiển thị diện tích và chu vi của hình vuông có cạnh là 5. Bài viết này minh họa cách sử dụng TypeScript để tạo lớp và kế thừa, cùng với việc ghi đè phương thức để tính toán thông tin cơ bản của hình vuông. Lưu ý rằng bạn có thể mở rộng lớp Shape và tạo các lớp con khác để tính diện tích và chu vi của các hình học khác nhau.
Hy vọng bài viết này giúp bạn làm quen và hiểu rõ hơn về cách sử dụng TypeScript trong lập trình hướng đối tượng!
Bài giải
-------------------- ######## --------------------
Câu hỏi thường gặp liên quan:
Cùng chuyên mục: