【链块技术33期】区块链技术语言(二十五)——面向对象:接口

本文介绍了Go语言中的接口及其在面向对象中的作用。多态是面向对象的三大特性之一,Go语言通过接口实现多态,允许不同类型的对象共享相同的外部接口。文章详细讲解了接口的定义、实现,包括普通接口和嵌入接口,并探讨了接口类型的赋值,包括对象实例赋值和接口之间的赋值。此外,还讨论了空接口和类型查询,如类型断言和类型选择。
摘要由CSDN通过智能技术生成

原文链接:区块链技术语言(二十五)——面向对象:接口

 

多态是面向对象的三大基本特性之一。多态是指对于不同的实例,同样的操作可能会有不同的表现形式。例如加法操作,如果操作的数据是数,那么它对两个数进行求和;如果操作的数据是字符串,那么它将连接两个字符串。

多态机制使具有不同内部结构的对象可以共享相同的外部接口。这意味着,虽然针对不同对象的具体操作不同,但通过一个公共的类,那些操作可以通过相同的方式予以调用。这样可以减少代码的复杂度。

在Go语言里,定义这些操作的类叫作接口(interface)。

一、接口的概述

在Go语言中,接口是一个自定义类型,具体描述了一系列方法的集合。它是一种抽象的类型,不会暴露出它所代表的对象的内部值结构和这个对象支持的基础操作的集合,它们只会展示出它们自己的方法,即接口指定了一个类型应该具有的方法,并由该类型决定如何实现这些方法。

在Go语言中,当一个类型定义了接口中的所有方法,我们称它实现了该接口。

二、接口的定义与实现

2.1 接口的定义

接口的定义格式与结构体类似,接口的定义需要关键词type和interface。定义如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值