golang中,如何写一个类?如下:
package main
import (
"fmt"
"github.com/bitly/go-simplejson"
)
import (
"encoding/json"
)
//在go中,用 struct 就可以定义一个类了
type student struct {
name string //这相name是小字开头的,因为在同一个包里面不用大写,在不同的包,只有大写才能导出,哈.这个要注意的
}
//然后能过在student上实现sum函数,这样 student 类就可以有一个函数了
//这里返回一个bool值,也可以不返回
func (s student) sum(numbers ...int) bool {
fmt.Println(s.name)
for _, v := range (numbers) {
fmt.Println(v)
}
fmt.Println(numbers)
return true
}
//同样的,也可以实现其他的
func (s student) getName() string {
return s.name
}
//设置名字,是不是和java很像?哈哈
//当然,最最重要的是,这个要你传一个指针哦,不然,student只是一份拷贝,不能设置名字的.
//可以把*号去掉试下,是不是打印两个 kris.
func (s *student) setName(name string) {
s.name = name
}
//随便来一个json吧,web和json现在是很难分开了
type MyData struct {
Name string `json:"item"` //这个单引号里,就算是别名了
Other float32 //没有单引号的效果,可以看下
}
func main() {
numbers := []int{1, 2, 3, 4}
s := student{"kris"}
data := s.sum(numbers...)
fmt.Println(data)
fmt.Println(s.getName())
s.setName("jack")
fmt.Println(s.getName())
//json的处理
var detail MyData
detail.Name = "1"
detail.Other = 2
body, err := json.Marshal(detail)
if err != nil {
panic(err.Error())
}
fmt.Println(body) //这样子打印出来,是看不懂的,因为是一个byte数组
str := string(body) //试下这样子?
fmt.Println(str) //一下就清晰明了了
js, err := simplejson.NewJson(body)
if err != nil {
panic(err.Error())
}
fmt.Println(js) //这样子如何?看得清楚了吧?
}
搜索
标签
study
ab
amap
apache
apahe
awk
aws
bat
centos
CFS
chrome
cmd
cnpm
composer
consul
crontab
css
curl
cygwin
devops
di
docker
docker,docker-compose
ethereum
excel
fiddler
fluentd
framework
front-end
git
gitgui
github
glide
go
golang
gorm
grafana
gzip
ioc
item2
iterm2
javascript
jenkins
jsonp
kafka
laradock
laravel
larval
linux
liunux
log
mac
mac, wi-fi
macos
magento
mariaDB
minikube
mongoDB
msp
mysql
netbeans
nginx
nodejs
nohup
npm
nsq
oracle
php
php-fpm
php7
phpstorm
php扩展
Protobuf
python
redis
scp
server
shell
soap
socket
socket5
sql
sre
ssdb
ssh
ssl
study
sublime
swift
system
td-agent
uml
v2ray
vagrant
vagrnat
vim
vpn
vue
vue.js
webpack
webrtc
websocket
webtatic
windows
windows7
word
wps
xdebug
yarn
yii2
yum
zookeeper
世界国家
互联网
以太坊
分类
前端
小程序
打印机
排序算法
搞笑
权限
粤语
缓存
网络
虚拟机
视频
设计模式
项目管理
热门文章
友情链接