パッケージはクラスを編成する方法です。
パッケージを使用する主な目的は、クラスの一意性を確保することです。
たとえば、コードに Test クラスを作成すると、同僚も Test クラスを作成する可能性があります。同じ名前のクラスが 2 つある場合、それらは競合し、コードのコンパイルに失敗します。
Java には、使用できる既製のクラスが多数用意されています。
①: たとえば、配列を出力します:
public class TestDemo{ public static void main(String[] args) { int[] array = {1,2,3,4,5}; System.out.println(Arrays.toString(array)); } }
配列を使用するには、パッケージをインポートする必要があります。図を参照してください:
コードの先頭行が記述されていない場合、エラーが報告されます。図を参照してください:
次に、上記をインポートする方法 パッケージに関しては、Arrays コードを記述すると、IDEA は選択するオプションを自動的にポップアップ表示します。最初の項目を選択して Enter キーを押すと、 、パッケージをインポートするのに役立ちます。図を見てください:
②: 別の例:
Date は日付を定義するクラスであり、これも Java クラス ライブラリによって記述されます
public class TestDemo { public static void main(String[] args) { java.util.Date date = new java.util.Date();//在我们不导包时候手写 // 得到一个毫秒级别的时间戳 System.out.println(date.getTime()); } }
java.util パッケージに Date クラスを導入するには、java.util.Date を使用できます。
ただし、この書き方は面倒です。このとき、上記の方法を使用できます。
import java.util.Date; public class TestDemo { public static void main(String[] args) { Date date = new Date(); // 得到一个毫秒级别的时间戳 System.out.println(date.getTime()); } }
注:
特定のクラスをインポートすることはできますが、特定のパッケージをインポートすることはできません
: util パッケージをインポートし、エラーを報告します
: 特定のクラスをインポートします
#: 別の例:
java.util で他のクラスを使用する必要がある場合は、 import java.util.*
import java.util.*; public class TestDemo { public static void main(String[] args) { Date date = new Date(); // 得到一个毫秒级别的时间戳 System.out.println(date.getTime()); } }
: エラーは報告されません。これは * 可能です。ワイルドカード文字として理解され、このパッケージの下にあるすべてのクラスをインポートすることを意味します。
質問: util の下には多くのクラスがありますが、それらはすべて一度にインポートする必要がありますか?いいえ、Java 処理に関しては、必要な方に対応します。
④: ただし、インポートするクラス名を明示的に指定することをお勧めします。そうしないと、依然として競合が発生する可能性があります。
例:
import java.util.*; import java.sql.*; public class TestDemo { public static void main(String[] args) { // util 和 sql 中都存在一个 Date 这样的类, 此时就会出现歧义, 编译出错 Date date = new Date(); System.out.println(date.getTime()); } } // 编译出错 Error:(5, 9) java: 对Date的引用不明确 java.sql 中的类 java.sql.Date 和 java.util 中的类 java.util.Date 都匹配
この場合、次のことが必要です。完全なクラス名を使用するには
注:
import は C の #include とは大きく異なります。他のファイルの内容を導入するには C では #include する必要がありますが、Java ではそうではありません。Import は単にimport は C の名前空間に似ており、使用法
知識ポイント
import と package の違い
package: "package" を参照します。 to: class それが配置されているパッケージ
import: 「はじめに」とは、インポートされたクラスに必要なクラスを指します。
Java クラス ライブラリでコードを使用したい場合は、 import
パッケージ内の静的メソッドとフィールドをインポートするには、import static を使用します。
①例:
import static java.lang.System.*; public class Test { public static void main(String[] args) { out.println("hello"); } }
このように System.out.println( "hello"); は out.println("hello");
② と書くことができます 別の例:
import static java.lang.Math.*; public class TestDemo { public static void main(String[] args) { double x = 30; double y = 40; // 静态导入的方式写起来更方便一些. // double result = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2)); double result = sqrt(pow(x, 2) + pow(y, 2)); System.out.println(result); } }
Math. は次の場合に削除できます。コードを書いています。
基本ルール:
ファイルの先頭に package ステートメントを追加して、コードがどのパッケージに含まれるかを指定します。
パッケージ名は、通常は会社のドメイン名の逆の形式を使用して、できる限り一意に指定する必要があります (com.xuexiao.demo1 など)。
パッケージ名はコードと一致する必要があります。たとえば、com.xuexiao.demo1 パッケージを作成すると、コードを保存するための対応するパス com/xuexiao/demo1 が存在します。
クラスに package ステートメントがない場合、クラスは次のようになります。
操作手順:
1) まず、IDEA で新しいパッケージを作成します: src を右クリック -> 新規 -> パッケージ
2) ポップアップで ダイアログ ボックスにパッケージ名 (例: com.xuexiao.demo1) を入力し、[Enter] をクリックします
3)パッケージ内にクラスを作成し、パッケージ名を右クリックして、[新規]->クラスを選択し、クラス名を入力します 4) この時点で、次のことができます。ディスク上のディレクトリ構造が IDEA5) によって自動的に作成されたことを確認してください。5) 同時に、新しく作成された Test.java の先頭にもそれが表示されます。ファイルにパッケージ ステートメントが表示されました我们已经了解了类中的 public 和 private. private 中的成员只能被类的内部使用.
如果某个成员不包含 public 和 private 关键字, 此时这个成员可以在包内部的其他类使用, 但是不能在包外部的类使 用.
举例:
下面的代码给了一个示例. Demo1 和 Demo2 是同一个包中, Test 是其他包中.
Demo1.java
package com.bili.demo; public class Demo1 { int value = 0; }
Demo2.java
package com.bili.demo; public class Demo2 { public static void Main(String[] args) { Demo1 demo = new Demo1(); System.out.println(demo.value); } }
// 执行结果, 能够访问到 value 变量
10
Test.java
import com.bili.demo.Demo1; public class Test { public static void main(String[] args) { Demo1 demo = new Demo1(); System.out.println(demo.value); } } // 编译出错 Error:(6, 32) java: value在com.bili.demo.Demo1中不是公共的; 无法从外部程序包中对其进行访问
1. java.lang:系统常用基础类(String、Object),此包从JDK1.1后自动导入。
2. java.lang.reflect:java 反射编程包;
3. java.net:进行网络编程开发包。
4. java.sql:进行数据库开发的支持包。
5. java.util:是java提供的工具程序包。(集合类等) 非常重要
6. java.io:I/O编程开发包。
以上がJavaパッケージの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。