美文网首页
golang反射调用方法

golang反射调用方法

作者: 耍帅oldboy | 来源:发表于2022-08-03 11:59 被阅读0次
package main

import (
    "fmt"
    "reflect"
)

type Person struct {
    Name string `json:"name" from:"name" msg:"名字必填"`
    Age  int    `json:"age" from:"age" msg:"年龄必填"`
}

func (this Person) GetName() string {
    return this.Name
}

func (this *Person) SetName(name string) {
    this.Name = name
}

func main() {
    p := Person{
        Name: "小明",
        Age:  20,
    }
    v := reflect.ValueOf(&p)
    var params []reflect.Value
    params = append(params, reflect.ValueOf("李四"))
    b := v.MethodByName("SetName").Call(params)
    fmt.Println(b)
    a := v.MethodByName("GetName").Call(nil)
    fmt.Println(a)
    fmt.Printf("%#v", p)
}

执行结果

[]
[李四]
main.Person{Name:"李四", Age:20}

相关文章

  • golang反射调用方法

    执行结果

  • go 的反射 reflect

    Golang语言实现了反射,反射机制就是在运行时动态的调用对象的方法和属性,官方自带的reflect包就是反射相关...

  • golang 反射

    反射机制是指在程序运行的时候动态地获取对象的属性后者调用对象方法的功能。golang 支持反射,原生的 json ...

  • Java 反射

    Java反射Java反射API获取Class对象通过反射创建实例对象,调用公共方法通过反射调用私有方法 一.Jav...

  • 反射机制(四)操作方法

    获取方法: 调用方法 问题一答案: 使用反射调用可变参数 使用反射调用静态方法: 静态方法不属于任何对象,属于类本...

  • golang-rpc

    参考 golang中的RPC调用服务器方法 golang rpc的两种调用方法 Go官方库RPC开发指南 示例 s...

  • Java反射

    一 什么是反射 无法通过new 关键字来获取对象并调用方法,通过JDK提供的反射API来进行反射调用,反射是...

  • Golang 反射实现依赖注入

    Golang 反射实现依赖注入 Coding/Golang #Golang #Golang/reflect 依赖注...

  • golang反射机制介绍

    golang反射机制介绍 Go语言提供了一种机制,在编译时不知道类型的情况下,可更新变量、在运行时查看值、调用方法...

  • Go-反射

    1.反射的简介 Golang提供了一种机制,在编译时不知道类型的情况下,可更新变量、运行时查看值、调用方法以及直接...

网友评论

      本文标题:golang反射调用方法

      本文链接:https://www.haomeiwen.com/subject/ptiswrtx.html