公告

微信

欢迎大家私信交流

Skip to content

2024.9.7面试

  1. go和java区别
    • 解释
    • 并发
  2. go是不是面向对象语言
    • 二象性
  3. 有哪些数据类型:基础数据类型 容器类型
    • int
    • string
    • bool
    • float
    • slice
    • map
    • channel
    • complex 复数
    • byte
    • Rune
    • interface
    • struct
    • 指针
    • 函数
  4. slice和数组
    • 区别 创建
    • 扩容
  5. go里面的_
    • 不定式
    • init()
  6. slice的底层
    • 指针 长度 容量
    • 内存机制
    • 扩容算法
    • 指针地址是否有变化
      • 容量是否够
      • 指针切换
    • 创建切片写法
  7. map的底层
    • map哪些类型可作为key 是否可比较
    • map是否并发安全
    • sync.map 并发map
    • 遍历过程
    • 不可以比较 直接引用
    • 扩容机制:等量扩容 拿出来字段说
    • map性能
  8. 接口的底层
    • 空接口 非空接口 eface iface
    • table 指针
  9. GMP模型,流程(不熟)
    • -> 创建 运行 睡眠/消亡
    • P如何进入全局队列,随机取出本地队列中的线程
    • G0和M0
  10. GC垃圾回收
    • 强三色/弱三色不变式
    • 运行调用时机,可以手动
  11. 逃逸分析
    • fmt.print 逃逸分析
    • 栈的优点/堆的优点
  12. 内存分配(不熟)
    • 好处

上次更新于: