Solidity - 抽象合约


抽象合约是一种包含至少一个函数但没有任何实现的合约。这样的合同被用作基础合同。通常,抽象合约包含已实现的功能和抽象功能。派生合约将实现抽象函数并在需要时使用现有函数。

如果派生合约未实现抽象函数,则该派生合约将被标记为抽象。

例子

尝试以下代码来了解抽象合约在 Solidity 中的工作原理。

pragma solidity ^0.5.0;

contract Calculator {
   function getResult() public view returns(uint);
}
contract Test is Calculator {
   function getResult() public view returns(uint) {
      uint a = 1;
      uint b = 2;
      uint result = a + b;
      return result;
   }
}

使用Solidity First Application章节中提供的步骤运行上述程序。

输出

0: uint256: 3