zoukankan      html  css  js  c++  java
  • [Go] golang的接口合约

    接口类型
    1.接口类型具体描述了一系列方法的集合,实现这些方法的具体类型是这个接口类型的实例
    2.一个类型如果拥有一个接口需要的所有方法,那么这个类型就实现了这个接口

    package main
    
    import (
    	"fmt"
    )
    
    //定义一个接口类型Person
    type Person interface {
    	//描述了一个需要实现的Say方法,返回的类型是error
    	Say() error
    }
    
    //定义一个类型
    type Tsh struct{}
    
    //给类型定义独占方法,参数返回值和Person接口要求的一样,就意味着实现了该接口
    func (t *Tsh) Say() error {
    	fmt.Println("我是tsh")
    	return nil
    }
    func main() {
    	//实例化
    	tsh := Tsh{}
    	//直接调用实例的方法
    	tsh.Say()
    	//该测试方法要求传入Person类型,因为我的Tsh实现了Person接口,所以我的Tsh也可以传入
    	test(&tsh)
    
    }
    
    //测试方法要求传入Person类型
    func test(p Person) {
    	p.Say()
    }
    

      

  • 相关阅读:
    【每日日报】第四十六天
    jsp动作标识
    JSP注释
    request对象
    Servlet的创建和配置
    基于图书管理系统的浏览
    在JSP中应用JavaBean
    交流会
    基于图书管理系统的改
    基于图书管理系统的增
  • 原文地址:https://www.cnblogs.com/taoshihan/p/10414940.html
Copyright © 2011-2022 走看看