私の質問は、少なくとも1つのeduという名前のフォルダと、mitという名前の別の単一のフォルダ(たとえば)と、そのすべてのコードがサブフォルダに続くディレクトリ構造を作成するのはなぜですか?Javaでedu.mit.stkのようなディレクトリ構造を作成するのはなぜですか?
これは何らかの識別子ですか?
構造は実際に何らかの理由でコンピュータで使用されていますか?それとも、読者の役に立ちますか?
もしそうなら、それは読者をどのように助けますか?
私の質問は、少なくとも1つのeduという名前のフォルダと、mitという名前の別の単一のフォルダ(たとえば)と、そのすべてのコードがサブフォルダに続くディレクトリ構造を作成するのはなぜですか?Javaでedu.mit.stkのようなディレクトリ構造を作成するのはなぜですか?
これは何らかの識別子ですか?
構造は実際に何らかの理由でコンピュータで使用されていますか?それとも、読者の役に立ちますか?
もしそうなら、それは読者をどのように助けますか?
これは、名前の衝突を防ぐために行われます。既定のルールは、パッケージ構造としてドメイン名の逆を使用することです。
したがって、Microsoftはすべてのコードをcom.google.*
パッケージに保存し、マイクロソフトはcom.microsoft.*
パッケージにコードを保存します。両方の企業がSearchEngineクラスを実装すると、名前の衝突は発生しません。
教育機関が同じことを行うので、あなたはedu.mit.*
サブパッケージ内の任意のコードがありそうなパッケージ規則と一致するMIT
Javaの規約では、ソースディレクトリをパッケージ階層に合わせて配置します。例えば、 Managing Source and Class Files。
したがって、クラスがedu.mit.stk.Foo
の場合、edu/mit/stk/Foo.java
となります。
名前空間です。クラス/パッケージ名の衝突を防ぎます。通常は会社のドメイン名が逆である(例:com.ibm.PackageName
)が、その値は任意であり、何でもかまいません。
慣習的に、Javaパッケージ名はドメイン命名規則に逆の順序で従います。したがってmit.edu
で開発されたパッケージにはedu.mit
が適切な接頭辞です。
でグループによって開発されたことを知っている(逆にインターネットドメイン名のように見えます)。
あなたは、名前の競合を避けるために、その逆のインターネットドメイン名を使用して命名されているhttp://docs.oracle.com/javase/tutorial/java/package/namingpkgs.html
パッケージで詳細を見ることができます。 という名前のパッケージのために彼らの パッケージ名。たとえば、com.example.mypackageを開始するために
企業はその逆のインターネットドメイン名を使用しますので、ecliplseからcalssは
package com.eclipse.XYZClass
Naming a packageからであってもよく、 example.comのプログラマーが作成したmypackage。
適切に識別されるためには、パッケージは同じ名前のフリンダでなければなりません。 Java tutorial on packages:あなたはcom.madbreaks.MyClass
でクラスを持っているのであれば、あなたも
com
|
+--madbreaks
|
+---MyClass
見るようにフォルダ構造を持つことになります。
http://docs.oracle.com/javase/tutorial/java/package/index。html –
ここで重複した答えの洪水が... –
@SteveKuo彼らはすべて良いです - 今すぐタイマーを待っています。 – sdasdadas