# Interface
## 什么是 interface ?
Interfaces 和抽象合约比较类似,但是他们不能实现任何功能。通过定义好的 interface 我们可以在不清楚目标合约具体实现方式的情况下,调用目标的合约
## 如何定义 interface ?
```solidity
interface Country {
// 定义接口中的方法和返回值
}
```
## interface 中不能做什么 ?
- 接口中不能定义 state 变量(包括 constants)
- 不能继承
- 不能有构造函数(constructor)
- 不能实例化一个 interface
- 不能实现接口中的方法
- 接口中的方法不能定义为私有或者内部方法,所有的方法必须定义为外部方法(external)
## 举个例子
```solidity
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
/**
* @title Counter
* @notice 目标合约
*/
contract Counter {
uint public count;
// count值递增
function increment() external {
count += 1;文章来源:https://www.toymoban.com/news/detail-778970.html
}文章来源地址https://www.toymoban.com/news/detail-778970.html
到了这里,关于solidity合约中的interface怎么使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!