-1

インポートクラスとは何を意味し、どこからインポートされますか?

package game;

import game.sprites.PlayerSprite;
import java.applet.Applet;
import java.awt.*;
import java.io.*;
import java.net.URL;
import java.util.Vector;
import litecom.Trace;
import litecom.gfxe.LoaderTarget2;
import litecom.gfxe.Timer;
import litecom.scoreclient2.ScoreClient2;

これで、LoaderTarget2.class ScoreClient2.class と Timer.class がどこからインポートされたかがわかります。これらは「ゲーム」クラスからインポートされ、パスは /litecom/gfxe/Timer.class になります。しかし、Vector.class はどこから来るのでしょうか? またはURL.classまたはApplet.class?

4

3 に答える 3

0

Vector.class 、 URL.class 、 Applet.class は、「rt.jar」にある Java クラス ライブラリからインポートされます。

于 2012-06-03T14:08:32.423 に答える
0

インポートされたクラスは、(通常) クラスパスにある JAR ファイルから取得されます。 importコードに外部コードが必要であること、およびどのコードが必要かをコンパイラーに伝える方法。

検討:

Bug b = new Bug();

は有効ですが、Bug() はどこで定義されますか? コンパイラは、バグを定義するクラスパスでクラスが見つかるまで、インポートを調べます。

また、クラスパス内のファイル パスと Java クラスの場所/パッケージには関係がないことに注意してください。Bug の例で、Bugクラスが bug.jar にあり、Bugのパッケージがthis.that.Bug. bug.jar は、パーミッションが許す限り、ファイル システムのどこにでも置くことができます。クラスパスには、その場所を含める必要があります。Java では、物理的な場所ではなく、クラスのパッケージを参照します。そのため、bug.jar がファイル システムのどこにあるかに関係なく、this.that.Bug必要に応じていつでもクラスを明示的にインポートまたは参照できます。

  this.that.Bug b = new this.that.Bug();
于 2012-06-03T14:08:53.623 に答える
0

JRE を起動すると、デフォルトでブートストラップ クラス ローダーが存在します。ブートストラップ クラス ローダーには、言語によって定義されたすべてのクラスが含まれています。それらは通常、Java インストールの「classes.jar」または「rt.jar」というファイル名に存在しますが、保証はありません。これらのクラスは、他のクラスと同様にインポート可能です。

于 2012-06-03T14:09:20.023 に答える