自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (2)
  • 收藏
  • 关注

原创 组合:Go 与 Java 的区别

Go 在组合时,可以不用new被组合的类,而直接使用它们的方法type Flyer struct {}func (Flyer) fly() { fmt.Println("fly")}type Runner struct {}func (Runner) run() { fmt.Println("run")}type Duck struct { Flyer Runn...

2019-10-25 09:39:06 260

转载 Golang 接口

在Go语言中接口(interface)是一种类型,一种抽象的类型。interface是一组method的集合,是duck-type programming的一种体现。接口做的事情就像是定义一个协议(规则),只要一台机器有洗衣服和甩干的功能,我就称它为洗衣机。不关心属性(数据),只关心行为(方法)。请牢记接口(interface)是一种类型。接口的定义接口名:使用type将接口定义为...

2019-10-23 16:14:00 316

转载 Golang和Java中的继承和组合

Golang的面向对象机制与Smalltalk或者Java等传统面向对象的编程语言不同。传统面向对象编程语言的一个重要特性是继承机制。因为继承机制支持在关联对象间进行代码复用和数据共享。继承机制曾在代码复用和数据共享的设计模式占据主导地位,但是目前组合这一古老的技术重新焕发了活力。在我们探讨如何在Go中实现继承机制之前(Golong中的继承机制和其他语言(Java)的继承机制有区别),我们先看...

2019-10-22 14:25:20 378

原创 Golang 反射的参考文章

https://segmentfault.com/a/1190000006190038https://juejin.im/post/5a75a4fb5188257a82110544https://www.gitdig.com/go-reflect/

2019-10-18 15:10:23 119

原创 go 数据类型和类型转换

numeric types数字类型包括整型和浮点型,内置的和系统无关的数字类型包括uint8:8位无符号整型(0 to 255) uint16:16位无符号整型(0 to 65535) uint32:32位无符号整型(0 to 4294967295) uint64:64位无符号整型(0 to 18446744073709551615) int8:8位有符号整型(-128 to 12...

2019-10-17 20:46:06 188

原创 Java 的 try catch

try catch 用来捕获非编译错误的代码,try catch 的主要作用是将捕获的异常转为相应的错误error,然后执行catch中的语句,再接着往下执行,不会使整个程序down掉某个函数中的某行代码有意或无意地引发了一个运行时异常。这时,初始的 异常 详情会被建立起来,并且该程序的控制权会立即从此行代码转移至调用其所属函数的那行代码上,也就是调用栈中的上一级。这也意味着,此行代码所属函数...

2019-10-15 08:35:28 115

原创 Go 值类型和引用类型

值类型:基本数据类型,int,float,bool,string,以及数组和struct特点:变量直接存储值,内存通常在栈中分配,栈在函数调用完会被释放引用类型:指针,映射(map),数组切片(slice),通道(channel),方法与函数特点:变量存储的是一个地址,这个地址存储最终的值。内存通常在堆上分配,通过GC回收。所有变量(包括参数, 结构体成员),都是值指针变量也...

2019-10-14 14:34:42 222

原创 go run build install get 的区别 以及三种不同的go源码文件

go run:go run 编译并直接运行程序,它会产生一个临时文件(但不会生成 .exe 文件),直接在命令行输出程序执行结果,方便用户调试,go build:go build 用于测试编译包,主要检查是否会有编译错误,如果是一个可执行文件的源码(即是 main 包),就会直接生成一个可执行文件,编译出可执行文件go install:go install 的作用有两步:第一步是编译导入...

2019-10-10 12:45:13 864

原创 值传递和引用传递

Java 、Go 和 Python 在函数传参时是值传递还是引用传递?首先要分清楚值类型和引用类型num是基本类型,值就直接保存在变量中。而str是引用类型,变量中保存的只是实际对象的地址。一般称这种变量为"引用",引用指向实际对象,实际对象中保存着内容Java:java中方法参数传递方式是按值传递如果参数是基本类型,传递的是基本类型的字面量值的拷贝如果参数是引用类型,传递...

2019-10-09 15:04:41 97

原创 浅拷贝 深拷贝 和 引用拷贝(指针拷贝)

拷贝分为两种方式,一种是引用拷贝(指针拷贝),一种是对象拷贝引用拷贝:和对象拷贝的不同之处在于,引用拷贝只会生成一个新的对象引用地址,但两个地址其最终指向的还是同一个对象对象拷贝:这种方式会重新生成一个新的对象,生成的新对象与原来的对象没有任何关联而对象拷贝又分为 浅拷贝 和 深拷贝下面分别说一下 Java 和 Go 的 拷贝:引用拷贝(指针拷贝):java:U...

2019-10-08 16:33:54 1058

原创 goLand 解决无法导入自定义包的问题

import ( "fmt" "rabbitmq/RabbitMQ")import 时无法导入自定义包,提示找不到包,是因为go 有着强制性的规范,需要把所有代码放到src目录,否则将找不到代码。而且还需要设置GOPATH,golang无法找到非GOPATH下的代码,如何在GOLand中设置GOPATH?...

2019-10-02 11:38:12 8392 1

操作系统精髓与设计原理

《操作系统精髓与设计原理(原书第6版)》PDF中文版,高清版

2018-10-05

Java JDBC实践

Java最基础的JDBC实现,对于新手来说是一个很好的练习小程序

2018-04-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除