function-variable-能见度
1.函数和状态变量必须声明它们是否可以被其他合约访问。
Functions and state variables have to declare whether they are accessible by other contracts.
Functions can be declared as
public - any contract and account can call private - only inside the contract that defines the function internal- only inside contract that inherits an internal function external - only other contracts and accounts can call State variables can be declared as public, private, or internal but not external.