Go语言中文网 为您找到相关结果 11

Go语言的接口和实现类初探(二)

扩展 上一篇讲了实现一个接口里的全部方法。 如果实现多个接口,也是很简单的,同理把他的方法实现了就行。 背景: 有一个动物的接口,他有吃和跑的动作,突然来一只鸟的动物,呀,它还会飞。 如果我们修改接口动物加上飞的动作,这样会让狗也要飞了。所以,我们把接口的方法都单独另出来。 package main import ( "fmt" ) //飞的接口 type IFly interface { Fly() } //吃的接口 type IEat interface { Eat() } //跑的接口 type IRun interface { Run() } //狗的实现类 type Dog struct { name string } func (dog *Dog) Eat() { fmt.Pri...阅读全文

博文 2015-06-17 23:07:41 Libra412

Go语言的接口和实现类初探(一)

1.引入 接口泛指实体把自己提供给外界的一种抽象化物(可以为另一实体),用以由内部操作分离出外部沟通方法,使其能被修改内部而不影响外界其他实体与其交互的方式。(来源于百度百科) 2.其他语言的接口 java的接口 public interface Animal {//定义接口 void eat(); } public class Dog {//与接口里的方法名相同,但并未实现Animal接口 void eat() { } } public class Cat implements Animal {//实现了Animal接口,并且eat方法必须存在 @Override void eat() { } }3.Go语言的接口 package main import ( "fmt" ) //定义一个接...阅读全文

博文 2015-06-17 23:00:49 Libra412

golang、beego初探

http://beego.me/docs/mvc/model/object.md 入口文件main.go package main import ( "github.com/astaxie/beego" "github.com/astaxie/beego/orm" _ "github.com/go-sql-driver/mysql" "testslim/models" _ "testslim/routers" ) func init() { orm.RegisterDriver("mysql", orm.DR_MySQL) orm.RegisterDataBase("default", "mysql", "test:pwd@tcp(ip:3306)/tablename?charset=utf...阅读全文

博文 2016-04-02 09:00:06 s630405377

golang初探之插入mongodb数据只有ObjectId的问题

当我插入数据到mongodb的时候,发现怎么插入都没有数据。只有默认生成的id字段。 image.png 一番排查之后发现原来是对象的字段需要大写。这是原本的。 //项目信息 type Projectinfo struct { url string title string body string } 这是改完了之后的。 //项目信息 type Projectinfo struct { Url string Title string Body string } 插入成功。 image.png 原因 我没仔细去深挖,估计是由于golang的大小写决定访问权限的问题导致的。小写是私有权限,而大写是公共权限,都可以访问...阅读全文

go语言初探--一个helloworld编译出来有2.2M!

1. 安装, 用go的安装包安装好了go,终端敲下go,显示了go的help,看来go是没有交互界面的。 2. 新建个helloworld.go文件,写入 package main import "fmt" func main() { fmt.Println("hello world") } go run helloworld.go运行成功,打出了hello, world 3. 再试试编译,go build一下,helloworld可执行文件出现了, 本来我是很欣喜的,有个编译文件好随处扔过去运行了啊,结果一看大小,2.2M,大得过分,勉强凑合能接受吧...阅读全文

博文 2015-04-14 20:00:00 u010211892

golang初探备忘

最近闲来没事,了解一下技术。听说golang很长时间了但是一直没怎么了解过,去年装了个go1.4然后下项目中忙了就扔那里没学习了,一年都过去了.... 最近看2016语言排行,go成了2016年度语言,目前排名13,是该学一学了! 关于golang的性能 这个是很重要的,如果golang的性能不高,估计不会有什么用最起码对于我来说,如果还不如java快为何还要用golang? 有什么优势呢? 所以从网上扒了扒资料,从google找到的里面包含的基准测试下一部分主流语言的性能对比:https://benchmarksgame.alioth.debian.org/u64q/go.html (备忘一下地址) (未完待续持续总结...阅读全文

博文 2017-01-23 04:00:10 sirgo_

Duang~ Golang 学习初探

Duang~ Golang学习初步体验,一直以来都对Go语言有一定的喜感,今天花了点时间初步的了解了下Go,其实很多东西弄个小例子go run下会明白很多东西的。 本人开发工具使用的是GoSublime 即在Sublime Text 2中安装此插件即可 运行Go 程序 请按 ctrl+b 接着输入 go run 文件名.go 即可查看结果 下面是一些基础的golang的demo package main import ( "fmt" ) const ( PI = 3.14 ) func mains(a int) int { fmt.Print(h1(1212)) return a } func h1(b int) int { return b } func main() { var b in...阅读全文

博文 2015-06-17 20:03:04 wyh09102010

Golang指针初探

初次接触Golang语言,对Go的了解暂时还比较局限。 在这里对Go指针进行了简单学习,感觉跟之前学的C指针是差不多的。 Go 语言的取地址符是 &,放到一个变量前使用就会返回相应变量的内存地址。 在地址前加上*则是取相应地址相关值的操作。 练习代码如下: package main import "fmt" func main() { var a int = 10 var b string = "hello world" var c bool = true var d float32 = 0.002 var e float64 = 0.00000003 fmt.Printf("a变量的地址: %x,a的值为:%d\n", &a,*&a) fmt.Printf("变量的地址: %x\n", &...阅读全文

博文 2018-07-06 01:34:47 我去买个大橘子

go语言学习初探(三)面向对象编程

类型系统 继承 package main import ( "fmt" ) type Integer int func (a Integer) Less(b Integer) bool { return a > b } func main() { var integer Integer = 1 fmt.Println(integer.Less(0)) } // print -> true 指针运算符 * package main import ( "fmt" ) type Person struct { Id string Name string } func main() { p1 := Person{"1", "张三"} p2 := &p1 p1.Id = "2" fmt.Println...阅读全文

博文 2018-10-26 15:34:40 夜丿未央