介绍
小编给大家分享一下golang怎么通过反射创建新对象,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!
golang适合做什么
golang可以做服务器端开发,但golang很适合做日志处理,数据打包,虚拟机处理,数据库代理等工作。在网络编程方面,它还广泛应用于网络应用,API应用等领域。
直接贴代码~
type A struct { Name 字符串 } ,//,测试 func TestReflect (t * testing.T),, { ,reflectNew ((*) (nil)) } ,//反射创建新对象。 func reflectNew (target 界面{}),,{ ,if target ==, nil { fmt.Println才能(“参数不能未空“) ,返回 ,} , ,t :=, reflect.TypeOf(目标) ,if t.Kind (),==, reflect.Ptr {,//指针类型获取真正类型需要调用Elem=,,t  t.Elem () ,} , ,newStruc :=, reflect.New (t)//,调用反射创建对象 ,newStruc.Elem () .FieldByName (“Name") .SetString (“Lily"),//设置值 , ,newVal :=, newStruc.Elem () .FieldByName (“Name"),//获取值 ,fmt.Println (newVal.String ()) }
<>强补充:去语言中创建对象的几种方式强>
对于去对象
type Car struct { ,,,color 字符串 ,,,size 字符串 }
方式一:
使用T{…}方式,结果为值类型
c :=,车{}
方式二:
使用新的的方式,结果为指针类型
c1 :=,新(汽车)
方式三:
使用,方式,结果为指针类型
c2 :=,,汽车{}
以下为创建并初始化
c3 :=,,汽车{“红”色,,,“1.2 l"} {c4 :=,,汽车颜色:,“红色“} c5 :=,车{颜色:,“红色“}
构造函数:
在去语言中没有构造函数的概念,对象的创建通常交由一个全局的创建函数来完成,以NewXXX来命名,表示“构造函数”:
func NewCar(颜色、size 字符串)* Car , { ,,,return 及汽车{颜色、大小} }
以上是“golang怎么通过反射创建新对象”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!