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

GOLANG 封装与扩展

# 封装 ```go type TreeNode struct { Left, Right *TreeNode Value int } //值接收者和指针接收者和传参数类型没有什么区别 //如果要改变内容或内容比较大,建议用值接收者 func (root *TreeNode) traverse() { if root == nil { return } root.Left.traverse() fmt.Print(root.Value, " ") root.Right.traverse() } func createTreeNode(v int) *TreeNode { return &TreeNode{Value: v} } func main() { var root TreeNode ...阅读全文

博文 2020-04-04 22:45:25 panzhongke

HyperLedger安装与测试(MAC PRO)

HyperLedger安装与测试(MAC PRO) 环境准备 Dccker golang Node.js python 2.7 (MacOS 自带) Fabric下载与安装 参考链接: Hyperledger Fabric v1.1.0 macOS部署开发者环境并创建第一个Fabric网络 测试 注意实际安装时使用的是1.2版本,对应测试也要参考: Building Your First Network 其中的可能遇到的问题: https://stackoverflow.com/questions/52158412/got-an-error-while-running-first-network-example-fabric-version-1-...阅读全文

博文 2018-09-07 00:34:40 向水一生

gf框架之分页模块(五) - 自定义分页

文章来源:http://gf.johng.cn/597435 由于分页对象预定义的样式比较有限,有的时候我们想自定义分页的样式(标签输出),由于分页对象的的所有方法都是公开的,这便为开发者自定义分页样式提供了非常高的灵活度。开发者可以通过以下方式实现自定义分页内容: (推荐)对输出内容进行正则匹配替换实现自定义; 根据分页对象公开的方法自行组织分页内容实现自定义; 也可以自定义一个分页对象(继承于原有分页对象),使用方法重载的方式来实现自定义; 示例1,使用第一种方式实现分页自定义: package main import ( "gitee.com/johng/gf/g" "gitee.com/johng/gf/g/os/gview" "gitee.com/johng/gf/g/util/g...阅读全文

博文 2018-05-21 12:34:39 John

面向"对象" - day 2

结构体和方法 函数的定义和声明 type treeNode struct { value int left, right *treeNode } func main() { var root treeNode root = treeNode{value: 3} root.left = &treeNode{} root.right = &treeNode{5, nil, nil} root.right.left = new(treeNode) // struct slice nodes := []treeNode { {value: 3}, {}, {5, nil, nil} } } Goang中可以将局部变量的地址返回使用 结构的方法 func (node treeNode) print()...阅读全文

博文 2019-11-03 12:33:11 aside section._1OhGeD

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-19 09:17:12 kxg3030

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-08 10:18:25 kxg3030

实战生产环境:1.13.3最新版k8s集群部署Heapster插件

本篇文章,所使用的任何镜像和yaml我都会发一个网盘链接,供大家下载学习!github:https://github.com/heyangguang有任何问题可以直接联系我的Email:heyangev@cn.ibm.com Heapster是一个收集者,将每个Node上的cAdvisor的数据进行汇总,然后导到第三方工具(如InfluxDB)。 Heapster介绍 架构图: Heapster首先从K8S Master获取集群中所有Node的信息,然后通过这些Node上的kubelet获取有用数据,而kubelet本身的数据则是从cAdvisor得到。所有获取到的数据都被推到Heapster配置的后端存储中,并还支持数据的可视化。现在后端存储 + 可视化的方法,如InfluxDB + gr...阅读全文

博文 2019-03-06 13:34:40 何阳光

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-03 16:43:27 kxg3030

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-04 09:10:11 kxg3030

高级 PHP、Swoole、Go 开发者的聚集地,期待你的加入

##### 为什么要创建这个群? * 有众多的PHP开发人员在同时学习Swoole和Go,但目前没有一个综合的群出现 * 很多Swoole的群对PHP开发人员不是很友好,都在推广自己的开源产品,很少解答新手的问题 * 在这个开发技术日新月异的时代,只有向优秀人学习和交流,才能真正理解一些前沿的技术 * 群内有资深并且热情的golang大佬,第一时间解答疑问,解答但不限于操作系统,网络协议,服务架构方面的问题。 * 群内有资深并且热情的Swoole大佬,第一时间解答疑问,解答但不限于swoole方面的问题。 * 定位于高级PHP和希望通过学习swoole和golang来提升自己的初中级PHP,摆脱低级curd。 ##### 热情邀请你的加入 ![高级 PHP、Swoole、Go 开发者的聚集地...阅读全文

博文 2019-04-17 15:04:47 kxg3030

2020-03-20

答案:People show b People show a 这是Golang的组合模式,可以实现OOP的继承。 被组合的类型People所包含的方法虽然升级成了外部类型Teacher这个组合类型的方法(一定要是匿名字段),但它们的方法(ShowA())调用时接受者并没有发生变化。 此时People类型并不知道自己会被什么类型组合,当然也就无法调用方法时去使用未知的组合者Teacher类型的功能。 package main import "fmt" type People struct {} type Teacher struct{ People } func (p *People) ShowB() { fmt.Println("People show b") p.ShowA() } fun...阅读全文

博文 2020-03-20 13:32:51 anthonydan

Golang备忘 - 01 杂项:零值,接口,自定义包

开发十年,就只剩下这套Java开发体系了 >>> 零值 当一个变量被声明后,系统自动赋予它该类型的零值: int为0,float为0.0,bool为false,string为空字符串,指针为nil 注意:所有内存在Go中都是经过初始化的 接口 1. 在接口上调用方法时: 指针方法可以通过指针调用 值方法可以通过值调用 接收者是值的方法可以通过指针调用,因为指针会首先被解引用 接收者是指针的方法不可以通过值调用,因为存储在接口中的值没有地址 2. 接口方法集调用的规则: 类型*T的可调用方法集包含接收者为*T或T的所有方法集 类型T的可调用方法集包含接收者为T的所有方法 类型T的可调用方法集不包含接收者为*T的方法 3. 内存占用 每个interface{}变量在内存中占据两个字长(32位机的...阅读全文

博文 2018-09-23 01:33:04 nnealguo

Go语言接口内部布局和方法集详解

1. 接口值内部布局   如果用户定义的类型实现了某个接口类型声明的一组方法,那么这个用户定义的类型的值就可以赋给这个接口类型的值。这个赋值会把用户定义的类型的值存入接口类型的值。赋值完成后得到的值称为接口值。接口值是一个两个字长度的数据结构,第一个字包含一个指向内部表的指针。这个内部表叫作iTable,包含了所存储的值的类型信息和与这个值相关联的一组方法(也就是方法集)。第二个字是一个指向所存储值的指针。下图展示实体值赋值后接口值的内部布局:                            实体值赋值后接口值的内部布局图 如果是一个指针赋值给接口的情况,类型信息会存储一个指向保存的类型的指针,而接口值第二个字依旧保存指向实体值的指针。如下图:                     ...阅读全文

以太坊挖矿源码:clique算法

链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载。 clique以太坊的官方共识算法是ethash算法,这在前文已经有了详细的分析: 它是基于POW的共识机制的,矿工需要通过计算nonce值,会消耗大量算力来匹配target值。 如果在联盟链或者私链的方案里,继续使用ethash就会浪费算力,POW也没有存在的意义。所以以太坊有了另一种共识方案:基于POA的clique。 POA, Proof of Authority。权力证明,不同于POW的工作量证明,POA是能够直接确定几个节点具备出块的权力,这几个节点出的块会被全网其他节点验证为有效块。 建立私链 通过这篇文章的操作可以建立一个私有链,观察这个流程可以看到,通过puppeth工具建立创世块时,会提示你选择哪...阅读全文

博文 2019-09-27 17:02:47 链客

Dubbo2.6.x—注册中心源码分析 dubbo-registry模块 (api and zookeeper)

文章有点长,亲,要慢慢看! 1. 概述 1.1 注册中心作用 在Dubbo中,注册中心为核心模块,Dubbo通过注册中心实现各个服务之间的注册与发现等功能,而本次源码的分析为registry模块的api和zookeeper的实现。 服务的提供者和消费者都需要把自己注册到注册中心,提供者让消费者感知到服务存在,从而消费者发起远程调用,也让服务治理中心感知到有服务提供者上线;消费者则是让服务治理中心可以发现自己。 1.2 Zookeeper Zookeeper是一个提供分布式协调服务的开源软件,常用于解决分布式应用中经常遇到的一些数据管理问题。Zookeeper功能非常强大,可以实现如分布式应用配置管理、统一命名服务、状态同步服务、集群管理等功能。关于Zookeeper,大家如果想了解可以关注一...阅读全文

博文 2020-01-11 21:32:47 苡仁ilss

Go学习笔记-接口(interface)的实现

对于go的接口,我们先来看看官方的解释 接口是用来定义行为的类型。这些被定义的行为不由接口直接实现,而是通过方法由用户定义的类型实现。如果用户定义的类型实现了某个接口类型声明的一组方法,那么这个用户定义的类型的值就可以赋给这个接口类型的值。这个赋值会把用户定义的类型的值存入接口类型的值 也就是说接口定义的方法,需要由具体的类型去实现它。 下面我们来看看接口的实现 在go语言中,接口的实现与struct的继承一样,不需要通过某个关键字php:implements来声明。在go中一个类只要实现了某个接口要求的所有方法,我们就说这个类实现了该接口。下面来看一个例子 type NoticeInterface interface { seedEmail() seedSMS() } type Stude...阅读全文

博文 2020-01-02 22:32:38 旧梦发癫

golang 结构体

构造函数,可以使用普通方法来构建 值接受者和指针接收者 1、要改变内容必须使用指针接收者 2、结构过大也要考虑使用指针接收者 3、一致性;如有指针接收者,最好都是指针接收者 值接收者是go语言特有 值/指针接收者均可接收值/指针 nil指针也可以调用方法(.) 封装 对包而言的 每个目录只能一个包,main包包含程序入口 为结构定义的方法必须放在同一个包内,可以在不同文件...阅读全文

博文 2020-06-08 01:33:14 我真是刚的不像话