Go のパッケージ

パッケージ

次の例では、独自のパッケージを作成する。

$ mkdir -p go/src/local/mypkg
$ touch go/src/local/sample.go
$ touch go/src/local/mypkg/mypkg.go
.
└── go
    └── src
        └── local
            ├── mypkg
            │   └── mypkg.go
            └── sample.go

mypkg.go を次の内容で作成する。package 文でパッケージ名を宣言する。

package mypkg

import "fmt"

func FuncA() {			 // 大文字で始まる名前は自動的にエクスポートされる。
    fmt.Println("FuncA()")
}

func funcB() {			 // 小文字で始まる名前はエクスポートされない。
    fmt.Println("funcB()")
}

sample.go を次の内容で作成する。 大文字で始まる FuncA() は公開されているため利用できる。小文字で始まる funcB() は非公開である。

package main

import "local/mypkg"

mypkg.FuncA()		 // 呼び出せる
mypkt.funcB()		 // Error