Golang 入门 : 类型系统介绍

Go语言类型系统

从计算机底层看,所有的数据都是由比特组成,但计算机一般操作的是固定大小的数,如整数、浮点数、比特数组、内存地址等。但是直接操控底层计算机指令进行编程是非常繁琐和容易出错的,所以Go语言对底层指令进行一些封装和对数据进行一些抽象,从而使得编程变得直观和易于理解。

在Go语言中,数据通常被抽象为各种类型(type)和值(value)。一个类型可以看作是值的模板,一个值可以看作是某个类型的实例。

Go语言支持自定义类型和若干预定义类型(即内置类型),这些内置的数据类型,兼顾了硬件的特性和表达复杂数据结构的便捷性。

一门语言的类型系统可以说是这门语言的灵魂。

Go语言类型有哪些

Go是一门强类型静态编译语言,数据类型是一门高级语言的基础。

Go语言将数据类型分为四类:基础类型、复合类型、引用类型和接口类型。

基础类型包括:数字、字符串和布尔型。

复合数据类型包括:数组和结构体。

引用类型包括:指针、切片、字典、函数、通道。

接口类型是一种抽象的类型。它不会暴露出它所代表的对象的内部值的结构和这个对象支持的基础操作的集合;它们只会展示出它们自己的方法。也就是说当你有看到一个接口类型的值时,你不知道它是什么,唯一知道的就是可以通过它的方法来做什么。

posted @   牛奔  阅读(167)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
历史上的今天:
2020-05-22 linux安装nodejs
2020-05-22 mysql导入失败
2020-05-22 解决ERROR 1231 (42000): Variable 'time_zone' can't
点击右上角即可分享
微信分享提示