以太坊技术开发课程06:用面向对象案例来编程solidity

Solidity面向对象介绍

Solidity编程语言结合了多种编程语言的特性,它是一种面向对象的编程语言,也可以说是一种面向对象的思想来实现智能合约的编写。

Solidity继承

  1. Solidity 支持多重继承包括多态
  2. 当一个合约从多个合约继承时,在区块链上只有一个合约被创建
  3. Solidity 的继承系统与 Python的继承系统 非常 相似,特别是多重继承方面

Solidity抽象合约

抽象合约可以包含已实现的函数也可以包含抽象函数,抽象函数是没有函数体的的函数。如果一个合约从一个抽象合约里继承,但却没实现所有函数,那么它也是一个抽象合约

Solidity接口

接口类似于抽象合约,但是它们不能实现任何函数。还有进一步的限制

  1. 无法继承其他合约或接口。
  2. 无法定义构造函数。
  3. 无法定义变量。
  4. 无法定义结构体 无法定义枚举。

Solidity面向对象案例-手机

编程手机面向对象需求分析

  1. 每个手机都有一样的开机与关机功能 (功能必须而且相同,那么此功能应该被抽取到父模块中)
  2. 每个手机都有闹钟功能,但不同品牌的手机闹钟设计不同 (功能必须但不相同,应该在父模块声明抽象函数,交给子类实现)
  3. 品牌手机实现Wifi与BlueTooth,但有些老年机只实现Wifi或者BlueTooth (可选功能交给接口来实现)

在这里插入图片描述

Solidity面向对象实现

采用一个基于手机的OOP案例,整合了Solidity的封装、继承、多态、接口等概念,请注意oop的相关语法0.4与0.5以上的版本差异非常大,此处采用的是0.6最新版的语法来实现

手机solidity编程案例演示

免责声明:本文由信比特作者原创文章,不构成投资建议,请谨慎对待。

版权声明:信比特作者保留原创权利。文章为作者独立观点,转载请注明出处

原文链接:http://www.bitpoa.com/BlockchainCollege/119.html

生成海报
收藏

相关推荐

0 条评论

微信扫一扫

微信扫一扫

微信扫一扫,分享到朋友圈

以太坊技术开发课程06:用面向对象案例来编程solidity