Golang 反射简单简单应用--参数教研
作者:互联网
Golang反射
以下内容为个人学习总结,如果有不准确的地方,欢迎指出!
说实话我之前用Python基本没怎么用过反射,估计在Golang里面也一样,在大多数应用和服务中并不常见。
提到反射,就必须要提一下反射的三大定律
- 1 可以将
interface{}
类型转换为reflect
类型。 - 2 通过反射对象可以获取
interface{}
变量。 - 3 值是否可以被更改,能被寻址。(概念不好理解,后面demo解释)
反射的一般使用场景
- 不确定预定类型的参数,需要根据参数的类型来执行不同的操作。
当然也可以使用
Assertion
来判断类型,但是这种方式非常麻烦且不准确。
Golang中反射常用的方法
reflect.TypeOf
获取类型(对应第一条定律)reflect.ValueOf
获取数据的运行时的表示(对应第二条定律)
一些关于反射的演示
标签:reflect,反射,--,定律,Golang,interface,类型,教研 来源: https://www.cnblogs.com/CharmCode/p/14315474.html