golang interface用法

接口是一个或多个方法签名的集合,任何类型的方法集中只要拥有与之对应的全部方法,
就表示它”实现”了该接口无须在该类型上显式添加接口声明。

所谓对应方法,是指有相同名称、参数列表 (不包括参数名) 以及返回值。当然,该类型还
可以有其他方法。
(1)接口命名习惯以er结尾结构体。
(2)接口只有方法签名,没有实现。
(3)接口没有数据字段。
(4)可在接口中嵌入其他接口。
(5)类型可实现多个接口。

下面举个栗子:
用例:一个人,他的有两种角色,在公司是程序猿,在家里是孩他爸。在公司当程序猿时就写bug,
在家当爹时就洗尿布。则其接口和结构体的映射关系为:

摘自:https://studygolang.com/articles/795

Original: https://www.cnblogs.com/kaituorensheng/p/15511776.html
Author: jihite
Title: golang interface用法

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/549050/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 毫秒时间转换

    https://www.npmjs.com/package/ms 作者:孟繁贵 Email:meng010387@126.com 期待共同进步! Original: https:/…

    技术杂谈 2023年5月31日
    0113
  • 利用kubernetes中的leader选举机制来完成自己的HA应用

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    技术杂谈 2023年7月25日
    080
  • 「周记」拓扑排序

    拓扑排序的英文名是 Topological sorting。拓扑排序要解决的问题是给一个图的所有节点排序。拓扑排序的目标是将所有节点排序,使得排在前面的节点不能依赖于排在后面的节点…

    技术杂谈 2023年7月24日
    073
  • CityEngine中动态水的实现

    地址:http://pan.baidu.com/share/link?shareid=3871210059&uk=3492170216密码:am5b 在今年Esri全球用户…

    技术杂谈 2023年5月31日
    090
  • cron 表达式

    cron 表达式 1.简介:一个cron表达式最少有5个空格来分割时间元素,总共有7个元素,分别如下: ① 秒(0-59) ② 分钟(0-59) ③ 小时(0-23) ④ 天(月的…

    技术杂谈 2023年7月24日
    0105
  • dremio 权限体系

    尽管dremio 的社区版没有提供rbac 以及权限管理的模块能力,但是我们通过官方文档还是可以学到不少东西的,同时也有助于我们可以自己的认证授权模块 对象层级 dremio 是基…

    技术杂谈 2023年5月30日
    0127
  • go-结构体内存布局

    方式一:通过 var 声明结构体 在 Go 语言中当一个变量被声明的时候,系统会自动初始化它的默认值,比如 int 被初始化为 0,指针为 nil。 var 声明同样也会为结构体类…

    技术杂谈 2023年7月11日
    074
  • Servlet 学习总结

    Servlet学习笔记 Servlet学习 学习视频为:https://www.bilibili.com/video/BV1Ta4y1H7Vc IDEA的使用 IDEA的简介 ID…

    技术杂谈 2023年7月11日
    093
  • k8s (kubenetes)集成runner

    k8s (kubenetes)集成runner unregisterRunners:true—这个很重要,记得设置true,否则容易出现多个没用的runner&#821…

    技术杂谈 2023年6月1日
    0106
  • 安装 CentOS 7

    1、VMware虚拟机安装 2、CentOS操作系统安装 3、CentOS操作系统配置 3.1、选择语言 3.2、网络和主机名 3.3、日期和时间 3.4、安装位置 3.5、开始安…

    技术杂谈 2023年7月11日
    0102
  • 关于程序员成长的一些思考

    任何一名技术大神都是从小菜鸟开始的,这应该无一例外。当然,有的人成长的快,有的人成长得慢,有的人坚持下来,有的人半途而废。如果我们在成长的过程中能掌握一些方法,也许能少走一些弯路。…

    技术杂谈 2023年7月11日
    0104
  • 《深度工作:如何有效使用每一点脑力》读后感

    空闲时间阅读了一下《深度工作:如何有效使用每一点脑力》,作为一个沉迷网络的人,已经很难有聚精会神的时候,所以阅读此书,记录一下读后感,争取应用到生活当中。全书分为两个方面进行说明:…

    技术杂谈 2023年6月21日
    090
  • 递归

    总结: 递归是一个思想,自己调用自己的一个过程 要点: 分析: 3.书写递归就是 ​ 找出什么时候不再 调用自己本身的条件 和 书写需要循环执行的代码 代码需要逻辑严密 4.注意事…

    技术杂谈 2023年6月21日
    0108
  • Python3获取5000个元素的单字符表

    此前考虑过一个问题,有没有办法获取到python里面所有定义好的单字符的表,比如我们获取5000个不一样的单字符,但是常用的 chr(number)的方法里面包含了太多的非字母条目…

    技术杂谈 2023年7月25日
    091
  • 大数据各组件重要技术点总结

    针对大数据组件特点归纳如下: 存储:HDFS,hudi,Hbase, Kafka 计算引擎:Spark,Flink OLAP: Doris 调度: Yarn 下面主要从架构、组件原…

    技术杂谈 2023年7月11日
    083
  • pycharm可以运行但无法debug的解决方法

    错误信息:pydev debugger: process 4588 is connecting 如果您尝试了网上的很多方法如防火墙设置,去掉 “.idea”…

    技术杂谈 2023年6月21日
    0122
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球