Solidez - Interfaces
As interfaces são semelhantes a contratos abstratos e são criadas usando interfacepalavra-chave. A seguir estão as principais características de uma interface.
A interface não pode ter nenhuma função com implementação.
As funções de uma interface podem ser apenas do tipo externo.
A interface não pode ter construtor.
A interface não pode ter variáveis de estado.
A interface pode ter enum, structs que podem ser acessados usando a notação de ponto do nome da interface.
Exemplo
Experimente o código a seguir para entender como a interface funciona no 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;
}
}
Execute o programa acima usando as etapas fornecidas no capítulo Aplicativo Solidity First .
Note - Selecione Teste na lista suspensa antes de clicar no botão implantar.
Resultado
0: uint256: 3