(4-1)Go系列
我的Go编程语言的学习系列
小刘要努力。
未来不担心,过去不后悔,现在不犹豫。
展开
-
十、Go协程的调度,互斥锁,计数器和线程池
在字节面试中,我见过:GO语言中的协程与Python中的协程的区别?其实就是要我讲解Go中GMP机制。我表示很多都用过,但是底层不了解。原创 2020-08-20 12:56:39 · 1505 阅读 · 0 评论 -
九、Golang并发和线程模型
并发与并行并不相同,并发主要由切换时间片来实现“同时”运行,并行则是直接利用多核实现多线程的运行,Go程序可以设置使用核心数,以发挥多核计算机的能力。原创 2020-08-20 12:56:02 · 1272 阅读 · 0 评论 -
七、Go 语言面向对象编程
@Author:Runsen在 Go 语言中没有类(Class)的概念,但这并不意味着 Go 语言不支持面向对象编程,毕竟面向对象只是一种编程思想。对于面向对象编程的支持Go 语言设计得非常简洁而优雅。下面,我们主要介绍下Go面向对象编程的三大特性:封装、继承和多态。封装:隐藏对象的属性和实现细节,仅对外提供公共访问方式继承:使得子类具有父类的属性和方法或者重新定义、追加属性和方法等多态:不同对象中同种行为的不同实现方式封装下面代码中我们已经定义了一个矩形 Rectangle,定义一个方法原创 2020-08-16 22:29:43 · 961 阅读 · 0 评论 -
六、Go编程语言中的函数式编程
@Author:Runsen任何编程语言都是众所周知的面向对象编程,还有日渐流行的函数式编程,当然Go也不例外,这也是本文的重点.。我可以这么说,Go的功力深不深完全就是看函数式编程和面向对象编程。下面,Runse先介绍Go编程语言中的函数式编程。文章目录普通函数匿名函数闭包函数Go中函数就是一类带特殊的 接收者 参数的函数。函数接收者在它自己的参数列表内,位于 func 关键字和方法名之间。函数对应操作序列,是程序的基本组成元素。Go语言中的函数有具名和匿名之分。具名函数:一般对应于包级的函数原创 2020-08-16 22:29:27 · 1490 阅读 · 0 评论 -
八、深入Go 编程语言接口
@Author:Runsen学习过Java,大家或多或少了解接口。接口是一种类型,它指定一个方法集,所有方法为接口类型就被认为是该接口。文章目录接口接口内部实现指针方法值方法空接口接口在Go语言中,一个接口类型总是代表着某一种类型(即所有实现它的类型)的行为。一个接口类型的声明通常会包含关键字type、类型名称、关键字interface以及由花括号包裹的若干方法声明。go 使用 type 关键字来定义接口,接口的声明类似于结构体,使用类型别名且需要关键字 interface,语法如下。代码来源:菜鸟原创 2020-08-20 12:56:14 · 1045 阅读 · 0 评论 -
五、Go语言复合数据类型(下)
下面,我们继续学习结构体类型,Map类型和Channel类型。原创 2020-08-16 22:29:57 · 987 阅读 · 0 评论 -
四、Go语言复合数据类型(上)
复合数据类型主要包含Go中的一些复杂类型,主要有指针类型,数组类型,切片类型,结构体类型,Map类型和Channel类型原创 2020-08-16 22:30:06 · 940 阅读 · 0 评论 -
三、Go语言控制语句
Go的语法很简单,其实也有一部分就是因为Go语言中控制语句关键字很少,但却完全满足了我们的需求,下面我列举了Go语言中常用的控制语言,对每一个控制语句都进行代码展示与解释。原创 2020-08-16 22:33:15 · 1071 阅读 · 0 评论 -
二、Go语言基础入门
最近在从 Java/python 语言转型到 go 语言,本文是Go 基础系列的文章,不会刻意追求面面俱到,但该有知识点都会覆盖。原创 2020-08-16 22:30:18 · 943 阅读 · 0 评论 -
一、Go语言环境搭建
要搭建Go语言开发环境,我们第一步要下载go的开发工具包,稳定版本是v1.9,Go1.9增加了一些新特性,这里我使用1.13版本。安装包下载地址为:https://golang.google.cn/dl/原创 2020-08-16 22:31:09 · 1149 阅读 · 0 评论