2012-02-15 12 views
7

サブパッケージからルートパッケージまでのメンバーの可視性はどのようになっていますか?サブパッケージの可視性

これは私が何を意味するかです:foo/utilsfoo/tools

foo   // the "root" package 
foo/utils // a sub-package 
foo/tools // another sub-package 

できfooアクセスプライベートメンバーや、彼らは別の、独立したパッケージとして機能しますか?

答えて

11

Goには、サブディレクトリまたはサブパッケージの概念がありません。パッケージは互いに分離されています。インポートパス"foo/utils"はインポートパスです(パッケージの検索方法)。文字列"foo/utils"は、ローカルディスクまたはインターネット上のパッケージの検索以外の意味を持ちません。

foofoo/utilsのプライベートメンバーにアクセスすることはできません。

Go1では、ソースツリーの各ディレクトリが1つのパッケージに対応しています。この詳細については、the go commandをご覧ください。