solidity特性
1、异常无法捕捉
2、函数返回值可为多个
3、包括Address等特殊类型
4、返回值声明可放在函数声明上
5、运行函数会消耗gas、gas不足会导致智能合约无法运行
6、可在go-ethereum、solidity在线编译器、mist钱包界面来运行智能合约
7、有单独的货币单位
8、条件表达式不能用整数代替布尔值
9、支持内联汇编(???用途)
10、合约类似一个类,既可以通过solidity创建合约,也可以通过web3.js(一个javascript框架)创建合约。
11、可见性或权限控制:external、public(函数默认)、internal(状态变量默认)、private
12、一个对象可以继承多个父类
13、回退函数:每个合约有且仅有一个没有名字的函数,保证函数执行异常(如gas不够)时返还ether
14、EVM内置事件对象(Event)
15、接口(虚合约指包含抽象函数的合约)
16、库合约:不需要实例化、调用库合约内的函数只是对其引用进行操作
17、支持函数类型,可以将函数赋值给一个变量