go语言(十四)----反射

发布时间:2024年01月23日
  1. 变量的结构

在这里插入图片描述
2 举个例子

package main

import "fmt"

type Reader interface {
	ReadBook()
}

type Writer interface {
	WriteBook()
}


//具体类型
type Book struct {

}

func (this *Book) ReadBook() {
	fmt.Println("Read a Book")

}

func (this *Book) WriteBook() {
	fmt.Println("Write a Book")

}

func main() {

	//b: pair<type:Book,value:book>
	b := &Book{}
	//r: pair<type:,value>
	var r Reader
	//r:pair<type:Book,value:book{}地址>
	r = b
	r.ReadBook()

	var w Writer
	//r:pair<type:Book,value:book()地址>
	w=r.(Writer)  //此处w r具体的type是一致的
	w.WriteBook()

}

在这里插入图片描述

文章来源:https://blog.csdn.net/weixin_41709748/article/details/135760008
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。