Contract

Một Contract có thể được tạo ra bên ngoài Ethereum thông qua Transaction hoặc tạo ra bên trong Solidity Contract.

Khi một Contract được tạo thì constructor của nó được thực thi một lần duy nhất. Constructor là không bắt buộc nhưng chỉ có một constructor duy nhất được phép tồn tại và không được hỗ trợ overloading.

Cấu trúc thường gặp của một Contract

pragma solidity >=0.6.0 <0.7.0;

contract UserStorage {
    uint private age;             
    string public firstName;      
    string public lastName;
    
    constructor() public {
        age = 20;
    }   
    
    function getDate() public view returns (unit) {
        return age
    }
    
    function getFullName() public view returns (string memory) {
        string memory fullName = string(abi.encodePacked(firstName, " ", lastName))
        return fullName
    }
    
    function setFirstName(string memory newFirstName) public {
        firstName = newFirstName;
    }
    
    function setFirstName(string memory newLastName) public {
        lastName = newLastName;
    }
}

Đầu tiên là pragma, đây là keyword chỉ định version mà file Solidity này sẽ được compile, tiếp theo là dùng keyword contract để chỉ định ra một Smart Contract

Các thành phần xây dựng nên một contract:

Last updated

Was this helpful?