Inheritance Solidity
Kế thừa trong ngôn ngữ lập trình Solidity. Tài liệu tự học Solidity
Trong khoá học online miễn phí Tự học lập trình web3 - Tự học ngôn ngữ lập trình Solidity
Summary for English Visiter
contract Doge { function catchphrase() public returns (string memory) { return "So Wow CryptoDoge"; } } contract BabyDoge is Doge { function anotherCatchphrase() public returns (string memory) { return "Such Moon BabyDoge"; } }
Thank you!
Mã contract của chúng ta khá dài rồi. Thay vì tạo một hợp đồng cực kỳ dài thì bạn nên chia code hợp đồng của mình thành nhiều hợp đồng để code được tổ chức một cách khoa học và dễ bảo trì.
Ngôn ngữ Solidity cũng cho phép ta kế thừa hợp đồng giống như các ngôn ngữ hướng đối tượng khác. Bạn có thể hiểu ngay cách kế thừa trong Solidity với ví dụ dưới dây:
contract Doge {
function catchphrase() public returns (string memory) {
return "So Wow CryptoDoge";
}
}
contract BabyDoge is Doge {
function anotherCatchphrase() public returns (string memory) {
return "Such Moon BabyDoge";
}
}
BabyDoge kế thừa từ Doge. Điều đó có nghĩa là nếu bạn biên dịch và triển khai BabyDoge, nó sẽ có quyền truy cập vào cả hàm catchphrase() và anotherCatchphrase ()
Điều này có thể được sử dụng để kế thừa logic (chẳng hạn như với một lớp con, Chó kế thừa Động vật). Nhưng nó cũng có thể được sử dụng đơn giản để tổ chức mã của bạn bằng cách nhóm các logic tương tự lại với nhau thành các hợp đồng khác nhau.
Thực hành luôn cho nhớ lâu bạn nhé
Nếu bạn chưa biết cách TẠO FILE, COMPILER và DEPLOY thì hãy xem lại trong bài giới thiệu nhé. Có hướng dẫn chi tiết ở đó.
BÀI TIẾP THEO: BÀI SỐ 18
HỌC TỪ ĐẦU: BÀI SỐ 1