一,合约:
1,new这个关键字就是部署一个新合约。
2,当与一个合约交互时需要两个条件 a:合约地址,b:ABI (application binary interfinace)。
3,通过import可以导入外部合约。
4,通过is可以继承合约。当合约的函数后面加入了virtual关键字,说明该合约函数可以被重写,如果子合约要重写父合约的函数,则子合约函数后要加override关键字。
5,合约继承可以直接在构造函数中传值。
二:支付发送:
支付发送Ether有三个关键字:transfer,send,call
transfer:2300 gas,throws error 抛出异常。
send:2300 gas,return bool,返回是否发送成功。
call:forward all gas or set gas, returns bool,不限制gas,转发所有gas或设置gas,返回是否发送成功。
如果合约想要直接收以太坊,则需要重写receive()或fallback()方法。往合约里面直接转入以太坊时会调用receive()或fallback()方法,需要加payable关键字。fallback()是回退函数。当调用合约中不存在的一个函数时,如果合约中定义的有 fallback 函数,这个 fallback 函数就会被执行。
三:library
library和contract类似,只不过不能往里面存款,同时不能有状态变量,library里面所有的function都需要是internal。
using 是使用library的关键字
我是温驭臣,一个Solidity的开发学习者,以上是我的简单总结,如果有缺陷,希望在评论区看到您的补充。