我的問題與this有點相關,但不是擴展一個現有的類型,試圖創建自己的類型。我的目標是有這樣的事情,從Java從一個不同的包中訪問一個結構體的方法
JsonClient j = new JsonClient()
j.setUrl("x.com")
j.setMethod(GET)
j.setData("{crap: morecrap}")
String result = j.send
但在去我能做的最好的是
config := jsonclient.Config{}
config.Url = "http://foaas.com/version"
config.Data = []byte(`{datadatadata}`)
config.Method = "GET"
s, err := jsonclient.NewClient(&config)
checkErr(err)
response := jsonclient.Dial(s)
我不希望有一個配置對象只是設置一個jsonclient未來 實例,因爲它只是有意義的,不要打我,jsonclient 類,所以我應該可以做jsonclient.SetUrl等,接縫更多 高效,並會幫助我瞭解幾個關鍵點即時失蹤 在去。
您可以找到jsonclient here
只需改變'NewClient'方法直接接受參數,而不是通過對象傳遞它們。或者,製作客戶端類的所有配置成員成員。 – inf
我如何製作客戶端類的所有配置成員成員? – norwat
你的問題對我來說還不清楚。您是否正在編寫並希望更改'jsonclient'的API,還是您正在使用的第三方軟件包?如果後面的,你不能保證配置值本身不需要在'New'中,所以你不能做很多其他的事情,只需要創建配置,不要存儲;像這樣:https://play.golang.org/p/YJU7Peln3p –