Solidity是面向对象的高级编程语言,是用于开发智能合约的语言之一,语法类似于JavasSript,但又有所不同。本期,我们为初学Solidity的开发者们推荐了CSDN作者super_lixiang关于学习Solidity面向对象的一篇总结文章。
面向对象:OO编程,针对面向过程而言的。 特点:封装、继承、多态
继承:
- 在solidity中,继承就是合约与合约之间一种特殊的传递关系。
- 通过”is”关键字实现继承。子合约(派生合约)可以访问父合约中所有非private的状态变量与函数。
- 继承支持参数传递
- 支持多重继承:在solidity中,支持多重继承,但是多重继承中有重名合约。多个继承之间用逗号隔开,如果一个合约继承了多个其它的合约,在区块链上只会创建一个合约,父合约中的代码都会进行拷贝形成继承(也就是把父合约代码拷贝到子合约中)。
- 如果一个合约继承了多个父合约,而这多个父合约中有同名函数,默认继承最后一个函数,前的合约同名函数被覆盖了。如果需要调用指定父合约的函数,可以通过合约名称进行显式指定。
抽象:
- 抽象合约是一个包含了没有函数体的函数,也可能包含一些正常函数,但量,只要该合约中有一个抽象函数,它就是抽象合约。抽象合约不能够通过编译,可以被继承。
- 抽象类似于多态,子合约通过继承完成同名函数的不同实现。
版权声明:本文为CSDN博主「super_lixiang」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:
https://blog.csdn.net/super_l...
文章来源:CSDN博主「super_lixiang」
文章原标题:《第三集:Solidity面向对象》
如有侵权请与我们联系删除。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。