美文网首页
Go的类型系统

Go的类型系统

作者: caoxinyiyi | 来源:发表于2018-06-26 15:22 被阅读6次

    1、什么是类型系统

    • 类型系统是 一个语言的类型体系结构。
    • 类型系统才是一门编程语言的地基,它的地位至关重要。
    • Go语言的面向对象编程特性从类型系统入手。

    2、类型系统包含的内容

    • 基本类型,如byte、int、bool、float等
    • 复合类型,如数组、结构体、指针等
    • 可以 向任意对象的类型(Any类型)
    • 值语义和引用语义
    • 面向对象, 所有具 面向对象特征(比如成员方法)的类型
    • 接口
      类型系统描述的是这些内容在一个语言中如何被关联。

    3、值类型&引用类型

    Go语言中的大多数类型都基于值语义。

    • 值类型
      • 基本类型,如byte、int、bool、float32、float64和string等
      • 复合类型,如数组(array)、结构体(struct)和 (pointer)等
    • 引用类型
      • 数组切 : 指向数组(array)的一个区间
      • map:极其常见的数据结构,提供键值查询能力
      • channel:执行体(goroutine)间的通信设施
      • 接口(interface):对一组满足某个契约的类型的抽象

    4、Go语言传值区别

    • 在于对象大小,如果对象很小,那么直接传值比较好,否则传指针
    • 如果想修改传递对象的值,则传指针,否则传值

    相关文章

      网友评论

          本文标题:Go的类型系统

          本文链接:https://www.haomeiwen.com/subject/hfcmyftx.html