59.笔记go语言——go语言中的反射
来源:互联网 发布:推广优化软件 编辑:程序博客网 时间:2024/05/16 15:50
59.笔记go语言——go语言中的反射
每个语言都有反射,Go语言也是。
Go语言是静态类型,所有数据的类型在编译器都是明确的
反射例子一
代码如下:
packagemain
import(
"fmt"
"reflect"
)
funcmain(){
varxfloat64=3.4
fmt.Println("type:",reflect.TypeOf(x))
}
执行:
输出如下:
type: float64
OK,SO?
reflect包有两个数据类型必须知道,一个是Type,一个是Value。
Type就是定义的类型的一个数据类型,Value是值的类型
TypeOf和ValueOf是获取Type和Value的方法
说明
反射是用程序检查其所拥有的结构,尤其是类型的一种能力;这是元编程的一种形式。反射可以在运行时检查类型和变量,例如它的大小、方法和 动态 的调用这些方法。这对于没有源代码的包尤其有用。这是一个强大的工具,除非真得有必要,否则应当避免使用或小心使用。
变量的最基本信息就是类型和值:反射包的 Type 用来表示一个 Go类型,反射包的Value 为 Go值提供了反射接口。
阅读全文
0 0
- 59.笔记go语言——go语言中的反射
- 43.笔记go语言圣经——go语言特性
- 45.笔记go语言圣经——go语言变量
- 50.笔记go语言——go语言函数细节
- 51.笔记go语言——go语言数据结构
- GO语言反射机制
- go语言反射reflect
- go语言中的反射的使用
- go语言中的接口类型与反射
- 31.笔记go语言——go doc命令
- 42.笔记go语言圣经——go起源
- 46.笔记go语言圣经——go运行时
- 48.笔记go语言圣经——go图形化
- 55.笔记go语言——go类型
- 56.笔记go语言——go的函数类型
- 2.笔记go语言——包
- 3.笔记go语言——函数
- 4.笔记go语言——变量
- 蓝牙扫描 权限 BLUETOOTH,BLUETOOTH_ADMIN
- POJ 3262
- 死锁
- linux任务计划几个小命令
- 如何搭建自己的shadowsocks
- 59.笔记go语言——go语言中的反射
- Android中的回调
- 60.笔记go语言——Go语言的传参和传引用
- 接口
- 61.笔记go语言——Go语言的nil值和nil
- matlab极值与积分
- linux必学的命令
- 7-2 列车调度
- Android HttpUrlconnection数据请求