solidity 合约中属性和行为的访问权限
创建合约
pragma solidity ^0.4.4;
/*
pragma:版本声明
solidity:开发语言
0.4.4:当前合约的版本,0.4代表主版本, .4代表修复bug的升级版
^:代表向上兼容,0.4.4 ~0.4.9可以对我们当前的代码进行编译
*/
//public internal private
//声明合约
contract Person{
//internal 默认的访问权限
//声明属性
uint internal _age;
uint _weight;
uint private _height;
uint public _money;
function _money() constant returns (uint) {
return 120;
}
}
打开合约地址
https://remix.ethereum.org/#optimize=true&version=soljson-v0.4.24+commit.e67f0147.js
把代码复制上去
//属性默认类型为‘internal’,'internal'和‘private’类型的属性都不能被外部访问,当属的类型为‘public’类型时,会生成一个和属性名相同并且返回值就是当前属性的get函数
//比如 uint public _money;
//生成
/* function _money() constant returns (uint) {
return _money;
} */
//手动生成的这个get函数会覆盖掉public类型的属性自动生成的get函数
网友评论