当前位置: 首页 > news >正文

在县城做同城网站怎么样广西梧州市住房和城乡建设局网站

在县城做同城网站怎么样,广西梧州市住房和城乡建设局网站,个人页面模板,asp.net网站开发 pdf一、GoLang 接口的定义 1、GoLang 中的接口 在 Go 语言中接口#xff08;interface#xff09;是一种类型#xff0c;一种抽象的类型接口#xff08;interface#xff09;定义了一个对象的行为规范#xff0c;只定义规范不实现#xff0c;由具体的对象来实现规范的细节…一、GoLang 接口的定义 1、GoLang 中的接口 在 Go 语言中接口interface是一种类型一种抽象的类型接口interface定义了一个对象的行为规范只定义规范不实现由具体的对象来实现规范的细节实现接口的条件 一个对象只要全部实现了接口中的方法那么就实现了这个接口换句话说接口就是一个需要实现的方法列表 2、定义一个 Usber 接口 定义了一个 Usber 接口让 Phone 和 Camera 结构体实现这个接口 package mainimport fmt//1、接口是一个规范 type Usber interface {start()stop() }//2.如果接口里面有方法的话必要通过结构体或通过自定义类型实现这个接口 type Phone struct{Name string }//3.手机摇实现 usb 接口的话必须先实现 usb 接口中的所有方法 func (p Phone) start() {fmt.PrintIn(p.Name,启动) } func (p Phone) stop() {fmt.PrintfIn(p.Name,关机) }func main() {p : Phone{Name : 华为手机}var p1 Usber //golang中几口就是一个数据类型p1 pp1.start()p1.stop() } /* 华为手机 启动 华为手机 关机*/ 二、空接口 1、空接口说明 golang 中空接口也可以之间当做类型来使用可以表示任意类型Golang 中的接口可以不定义任何方法没有定义任何方法的接口就是空接口空接口表示没有任何约束因此任何类型变量都可以实现空接口空接口在实际项目中用的是非常多的用空接口可以表示任意类型数据 2、空接口作为函数的参数 package mainimport fmt//空接口作为函数的参数func show (a interface{}){fmt.Printf(值%v,类型%T\n,a,a) }func main(){show(20) //值20类型intshow(你好 golang) //值您好 golang 类型stringslice : []int{1,2,34,5}show(slice) //值[1 2 34 5] 类型[]int } 3、切片实现空接口 package mainimport fmtfunc main() {var slice []interface{}{Snail,20,true,32.2}fmt.PrintIn(slice) //[Snail 20 true 32.2] } 4、map 的值实现空接口  package mainimport fmtfunc main() {//空接口作为 map 值var studentInfo make(map[string]interface{})studentInfo[name] SnailstudentInfo[age] 18studentInfo[married] falsefmt.PrintIn(studentInfo)// [age:18 married:false name:Snail] } 三、类型断言 一个接口的值简称接口值是由一个具体类型和具体类型的值两部分组成的这两部分分别称为接口的动态类型和动态值如果我们想要判断空接口中值的类型那么这个时候就可以使用类型断言其语法格式x.(T) x:表示类型为 interface{}的变量T表示断言x 可能是的类型 package mainimport fmtfunc main() {var x interface {}x hello golangv,ok :x.(string)if ok {fmt.PrintIn(v)}else {fmt.PrintIn(非字符串类型)} } 四、值接收者和指针接收者 1、值接收者 如果结构体中的方法是值接收者那么实例化后的结构体值类型和结构体指针类型都可以赋值给接口变量 package mainimport fmttype Usb interface {Start()Stop() } type Phone struct {Name string } func (p Phone) Start() {fmt.PrintIn(p.Name,开始工作) } func (p Phone) Stop() {fmt.Println(phone 停止) }func main() {phone1 : Phone{Name:华为手机}var p1 Usb phone1 //phone1 实现了 Usb接口 phone1 是 Phone 类型p1.Start()phone2 : Phone{ //华为手机开始工作Name:苹果手机}var p2 Usb phone2 //phone2 实现了 Usb 接口 phone2 是 *Phone 类型p2.Start() }2、指针接收者 如果结构体中的方法是指针接收者那么实例化后结构体指针类型都可以赋值给接口变量结构体值类型没法赋值给接口变量 package main import fmt type Usb interface {Start()Stop() } type Phone struct {Name string } func (p *Phone) Start() {fmt.Println(p.Name, 开始工作) } func (p *Phone) Stop() {fmt.Println(phone 停止) } func main() {/*错误写法phone1 : Phone{Name: 小米手机,}var p1 Usb phone1p1.Start()*///正确写法phone2 : Phone{Name: 苹果手机,}var p2 Usb phone2 //phone2 实现了 Usb 接口 phone2 是 *Phone 类型p2.Start()//苹果手机 开始工作 } 五、一个结构体实现多个接口 Golang 中一个结构体也可以实现多个接口 package mainimport fmttype AInterface interface {GetInfo() string } type Binterface interface {SetInfo(string,int) } type People struct{Name stringAge int }func (p People) GetInfo() string(){return fmt.Sprintf(姓名%v 年龄%d,p.Name,p.Age) }func (p *People) SetInfo(name string, age int) {p.Name namep.Age age }func main() {ver people People{Name:Snail,Age: 20,}// people实现了 Ainterface 和 Binterfacevar p1 AInterface peoplevar p2 Binterface peoplefmt.PrintIn(p1.GetInfo()) //姓名Snail 年龄20p2.SetInfo(pupu,21)fmt.PrintIn(p1.GEtInfo) //姓名pupu 年龄21 } 六、接口嵌套 接口与接口间可以通过嵌套创造出新的接口 package main import fmttype SayInterface interface {say() }type MoveInterface interface {move() }//接口嵌套 type Animal interface {SayInterfaceMoveInterface } type Cat struct {name string } func (c Cat) say() {fmt.PrintIn(喵喵喵) } func (c Cat) move(){fmt.PrintIn(猫会动) } func main() {var x Animalx Cat{name: 花花}x.move() // 猫会动x.say() // 喵喵喵 }
http://www.yutouwan.com/news/104885/

相关文章:

  • 建站之星切换模板零陵区住房和城乡建设局网站首页
  • 好看的商城网站设计什么是网络营销环境?
  • gps建站教程案例网站模板_案例网
  • 公司网页网站建设 ppt模板下载网站备案查询 站长
  • 景安企业网站建设宝塔反代wordpress
  • 天河区住房和建设水务局官方网站做旅游产品的网站有哪些
  • 设计网站费用企业网站建设流程图
  • 嘉兴房地产网站建设大连百度推广排名优化
  • 学校建设评建工作网站嘉定南翔网站建设
  • 制作微信公众号网站开发asp网站 工具
  • 云南省建设监理协会网站汕头行业网站
  • 陕西网站建设通报免费微信小程序模板
  • 互联网保险的发展现状宁波seo怎么做推广渠道
  • 门户网站建设自查整改运营是做什么的
  • 网站开发公司前置审批免费注册网站空间
  • 微商网站开发班服定制的网站
  • 网站建立失败的原因是海关申报网站怎么做
  • 大庆医院网站建设方案四川旅游
  • 科技公司手机网站ui设计师资格证
  • 山西焦煤集团公司网站 wap网站开发
  • 做质量计量的网站有哪些浙江建设网证书查询
  • 深圳网站建设公司联系方式上海橙网站设计公司
  • 网站被别的域名绑定深圳做营销网站公司
  • 网站关键词分隔符广州网站建设小程序开发
  • 用手机怎么做免费网站海口网页设计
  • 企业网站建站的专业性原则是指wordpress 文章的php
  • 场口一站式建站哪家公司好Wordpress搜索html页面
  • 做海外视频的网站有哪些品牌营销策划推广
  • 聊城专业建wap网站重庆高端seo
  • 国内简洁大气网站推荐小程序模板图