您现在的位置是:主页 > Web前端技术 > Web前端技术

olidity语言开发中的继承怎么使用开发技术

IDCBT2021-12-24服务器技术人已围观

简介这篇文章主要讲解了“olidity语言开发中的继承怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“olidity语言开发中的继

这篇文章主要讲解了“olidity语言开发中的继承怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“olidity语言开发中的继承怎么使用”吧!

在Solidity中,继承与经典的面向对象编程语言非常相似。你首先编写基本智能合约并告知你的新智能合约将从基础合约继承。

你还必须通过复制包含多态的代码来了解Solidity支持多重继承。所有函数调用都是虚函数,这意味着会是调用派生函数最多的函数,除非明确给出了合约名称。当某一个智能合约从多个合约继承时,只在区块链上创建一个智能合约,并将所有基础合约中的代码复制到创建的智能合约中。

让我们写下我们的基本智能合约:它将让我们轻松地为我们的合约添加所有权。我们将其命名为Ownable。 OpenZeppelin 的员工写了很多可以在智能合约中使用的可重用代码。这些代码段可通过其工具或其 Github存储库 获得。

这是代码:

pragma solidity ^0.4.11;/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 */contract Ownable {
  address public owner;  /**
   * @dev The Ownable constructor sets the original `owner` of the contract to the sender
   * account.
   */
  function Ownable() {
    owner = msg.sender;
  }  /**
   * @dev Throws if called by any account other than the owner.
   */
  modifier onlyOwner() {    require(msg.sender == owner);
    _;
  }  /**
   * @dev Allows the current owner to transfer control of the contract to a newOwner.
   * @param newOwner The address to transfer ownership to.
   */
  function transferOwnership(address newOwner) onlyOwner {    require(newOwner != address(0));      
    owner = newOwner;
  }
}

我们经常写的另一种模式是破坏我们的合约并将合约中存储的资金转移给所有者或另一个地址的能力。重要的是我们不希望任何人能够破坏我们的合约,所以我们的

标签:

很赞哦! ()

本栏推荐