classpath, package
⛳ Classpath
カテゴリ
空のディレクトリでエディタ(メモ帳)を開き、class b{} class a{}
を作成し、a.java
にファイルを保存します.その後、cmd
が開いてjavac a.java
にコンパイルされる.
コンパイルすると、2つのクラスファイルが生成されていることがわかります.
クラスがクラスファイルになります.
クラスパス
今回はa2.java
ファイルを作成しました.内容は以下の通りです.class b2{
public void print() {
System.out.println("Hello??");
}
}
class a2{
public static void main(String[] args) {
b2 con = new b2();
con.print();
}
またクラスファイルが生成されます.これで、java
ディレクトリにlib
という新しいフォルダを作成し、b2.class
ファイルをフォルダに移動しようとします.その後、cmdウィンドウでjava a2
を実行し、Hello??
を出力しますか?いいえ.エラーが発生する可能性があります.
発生したエラーは、b2.class
が現在のディレクトリに存在しないエラーである可能性があります.このような問題はjava -classpath ".;lib" a2
でいいです.-classpath
:Javaを実行するときに使用するクラスの場所を仮想マシンに伝える".;lib"
から.
現在のディレクトリでクラスを検索".;lib"
から;
は、パスとパスを区別する区切り記号です.".;lib"
からlib
は、現在のディレクトリが存在しない場合、libがクラスを検索することを示す.
クラスパスはjavaを実行するときにクラスの場所を指定する役割を果たします.Javaアプリケーションで使用されるクラスが複数のパスに分散している場合、クラスパスが役に立つ場合があります.
📦 Package
classpathは、コンピュータ記憶装置のどこかに存在するクラスファイルを使用する方法である.packageは、1つのクラスで同名のクラスを使用する方法です.
クラスが増えるにつれて、同じ名前のクラスが現れる可能性が高くなり、これらの名前の衝突を防ぐために設計されたパッケージです.
パッケージは通常のディレクトリと一致します.同じパッケージ内のクラスは一緒に使用できますが、別のパッケージ(ディレクトリ)内のクラスを使用する場合は、import
で現在のソースコードにロードする必要があります.
特定のパッケージのすべてのクラスをロードするには、.*
を貼り付けるだけです.
通常、プロジェクトディレクトリはsrcにソースコードを作成して管理し、コンパイル後の結果をbinサブアイテムに配置します.自分で作ってみようjava
フォルダにbin
およびsrc
フォルダを作成し、ソースコードをsrc
に移動します.java
フォルダでcmdを実行し、次のように入力します.
このように入力してコンパイルすると、src
フォルダのa.java
とa2.java
が同時にコンパイルされ、同じフォルダに.class
ファイルが生成されます..class
フォルダにbin
ファイルを作成する場合は、次のコンパイルを行います.
-d bin
はコンパイル結果をbinディレクトリの下に配置します.これは、Javaコンパイラがクラスのパッケージに自動的に対応するディレクトリを作成することを意味します.
異なるパッケージがインポートされ、各パッケージに同じ名前のクラスがある場合は、newキーワード生成プログラムを使用する場合に、そのパッケージ名を使用して解決できます.public static void main(String[] args) {
javatutorials.packages.example2.B b = new javatutorials.packages.example2.B();
}
Reference
1. 生活コードクラスパス
2. 生活コード小包
Reference
この問題について(classpath, package), 我々は、より多くの情報をここで見つけました
https://velog.io/@muz/classpath-package
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
class b2{
public void print() {
System.out.println("Hello??");
}
}
class a2{
public static void main(String[] args) {
b2 con = new b2();
con.print();
}
classpathは、コンピュータ記憶装置のどこかに存在するクラスファイルを使用する方法である.packageは、1つのクラスで同名のクラスを使用する方法です.
クラスが増えるにつれて、同じ名前のクラスが現れる可能性が高くなり、これらの名前の衝突を防ぐために設計されたパッケージです.
パッケージは通常のディレクトリと一致します.同じパッケージ内のクラスは一緒に使用できますが、別のパッケージ(ディレクトリ)内のクラスを使用する場合は、
import
で現在のソースコードにロードする必要があります.特定のパッケージのすべてのクラスをロードするには、
.*
を貼り付けるだけです.通常、プロジェクトディレクトリはsrcにソースコードを作成して管理し、コンパイル後の結果をbinサブアイテムに配置します.自分で作ってみよう
java
フォルダにbin
およびsrc
フォルダを作成し、ソースコードをsrc
に移動します.java
フォルダでcmdを実行し、次のように入力します.このように入力してコンパイルすると、
src
フォルダのa.java
とa2.java
が同時にコンパイルされ、同じフォルダに.class
ファイルが生成されます..class
フォルダにbin
ファイルを作成する場合は、次のコンパイルを行います.-d bin
はコンパイル結果をbinディレクトリの下に配置します.これは、Javaコンパイラがクラスのパッケージに自動的に対応するディレクトリを作成することを意味します.異なるパッケージがインポートされ、各パッケージに同じ名前のクラスがある場合は、newキーワード生成プログラムを使用する場合に、そのパッケージ名を使用して解決できます.
public static void main(String[] args) {
javatutorials.packages.example2.B b = new javatutorials.packages.example2.B();
}
Reference1. 生活コードクラスパス
2. 生活コード小包
Reference
この問題について(classpath, package), 我々は、より多くの情報をここで見つけました https://velog.io/@muz/classpath-packageテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol