第三集:Solidity面向对象

本文探讨Solidity编程中的面向对象特性,包括继承和抽象概念。继承允许合约通过`is`关键字实现代码复用,支持参数传递和多重继承。然而,多重继承可能导致重名函数,需通过显式指定调用父合约的函数。抽象合约包含未定义的函数,必须由子合约继承并提供具体实现,不能直接编译。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

面向对象:OO编程,针对面向过程而言的。   特点:封装、继承、多态

继承:

  1. 在solidity中,继承就是合约与合约之间一种特殊的传递关系。
  2. 通过”is”关键字实现继承。子合约(派生合约)可以访问父合约中所有非private的状态变量与函数。
  3. 继承支持参数传递
  4. 支持多重继承:在solidity中,支持多重继承,但是多重继承中有重名合约。多个继承之间用逗号隔开,如果一个合约继承了多个其它的合约,在区块链上只会创建一个合约,父合约中的代码都会进行拷贝形成继承(也就是把父合约代码拷贝到子合约中)。
  5. 如果一个合约继承了多个父合约,而这多个父合约中有同名函数,默认继承最后一个函数,前的合约同名函数被覆盖了。如果需要调用指定父合约的函数,可以通过合约名称进行显式指定。

 

 

抽象:

  1. 抽象合约是一个包含了没有函数体的函数,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值