反射,就是建立在类型之上的,Golang的指定类型的变量的类型是静态的(指定int、string这些的变量,它的type是static type), 在创建变量的时候就已经确定,反射主要与Golang的interface类型相关(它的type是concrete type),只有interface类型才有反射一说。 在Golang的实现中,每个interface变量都有一个对应pair,pair中记录了...
与前面的测试类似的思路,将结构体类型 Student 转成 Interface,再获取其 reflect.Type 类型和 reflect.Value 类型。结合 Value 的方法使用变量,最后将 reflect.Value 类型转成 interface,再通过类型断言,转成原始的 Student 类型。 主要体会 “断言” 在转换过程中的重要性。 type Student struct{Id int Name stri...