Solidity - Интерфейсы

Интерфейсы похожи на абстрактные контракты и создаются с использованием interfaceключевое слово. Ниже приведены ключевые характеристики интерфейса.

  • Интерфейс не может иметь никакой функции с реализацией.

  • Функции интерфейса могут быть только внешнего типа.

  • Интерфейс не может иметь конструктора.

  • Интерфейс не может иметь переменных состояния.

  • Интерфейс может иметь перечисления, структуры, к которым можно получить доступ, используя точечную нотацию имени интерфейса.

пример

Попробуйте использовать следующий код, чтобы понять, как работает интерфейс в Solidity.

pragma solidity ^0.5.0;

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

Запустите указанную выше программу, следуя инструкциям в главе « Первое приложение Solidity» .

Note - Перед нажатием кнопки развертывания выберите «Тест» в раскрывающемся списке.

Вывод

0: uint256: 3