zoukankan      html  css  js  c++  java
  • golang的包导入import

     import别名/点下划线
    (1)import关键字的作用:作用是导入该go源文件所依赖的package包。用在go源文件中,紧接在pakage后面的部分。
    (2)只要在源文件中用到了的package包就必须导入,而没有用到的package就绝对不能导入。
    (3)推荐使用import方式:(若有重复名称的包,则需要用别名来区分即可)
    import (
    "package1"
    "package2"
    "package3"
    "package4"

    )
    (4)包导入顺序规则:每个包只会被导入一次,且依赖包按照出现顺序优先被导入。
    若main包依赖包A,包A依赖包B。
    则会先导入包B,导入包B就会先初始化包B的常量和变量,然后执行包B的init函数(如果有的话)。
    B包导入完成后,就开始导入A包,同样会先初始化包A的常量和变量,然后执行包A的init函数(如果有的话)。
    A包导入完成后,就开始导入main包,同样会先初始化main包的常量和变量,然后执行包A的init函数(如果有的话),最后执行main包中的main函数。



    ------------------------------------------------------------------------------------------------------------
    • 1、通用导入方式(推荐)
      import (
         "fmt"
      )
      
      然后我们就可以通过包名调用相应的函数或者变量了
      fmt.Println("Hello World!")
      
       
    • 2、别名import(推荐)
      在同一个go源码文件中导入多个包时,当导入的这些包的最后一个元素(包名)重复时,则无法编译,此时最佳选择就是给导入的包取一个不同的别名来解决问题,这是别名最大的用处。当然,有时候可能包的名字很长或者不容易记忆,然后你可以给这个包起个别名(比如短一点啊或者容易记忆啊),这也算是另一个用处。故有两大用处:一是避免包最后一个元素重名,二是简化包名称。
      import (
        f "fmt"
      )
      
      然后可以如下使用该包
      f.Println("Hello World!")
      
       
    • 3、下划线import(有必要时,则推荐)
      当我们import一个包的时候,它里面的所有init()函数都会被执行,但是有时候我们并不真正需要使用这些包,仅仅是希望它里面的init()函数被执行,这个时候,就可以使用下划线import了
      import (
         "database/sql"
          _ "github.com/go-sql-driver/mysql"
      )
    • 4、点import(听我的,不要用。因为不同包下面的一些函数、常量、变量、类型等对象很有可能重名)
      点import就是在import 的包前面加个".", 这个导入方式,在使用相应的包的函数或者变量的时候,可以省略包名
    import (
       . "fmt"
     )
    
    然后我们可以不用带包名前缀调用相应包的函数
    Println("Hello World!")
    
    
    
  • 相关阅读:
    HTC T328W刷机包 仿三星S5 UI美化 精简 S5落下
    Dp_F Pku1157
    Power Strings (poj 2406 KMP)
    POJ 2411 Mondriaan's Dream (dp + 减少国家)
    js中中括号,大括号使用详解
    英语每日阅读---7、VOA慢速英语(翻译+字幕+讲解):卡梅伦呼吁女性移民学英语
    新东方雅思词汇---10.1、(a)esthet
    英语每日阅读---6、VOA慢速英语(翻译+字幕+讲解):性格沉静内向的人 能为社会创造更多价值
    英语每日阅读---5、VOA慢速英语(翻译+字幕+讲解):美国人口普查局表示美国人受教育程度提升
    英语每日写作---4、VOA慢速英语(翻译+字幕+讲解):专家:城市发展将加剧住房危机
  • 原文地址:https://www.cnblogs.com/igoodful/p/11238841.html
Copyright © 2011-2022 走看看