-1

A.java

package a;
class A {

    void f1()
    {
        System.out.println("hi");
    }
}  

B.java

A.java と同じフォルダにあり、同じフォルダにクラスファイルが生成されます。

package b;
class B
{
    new A().f1();
}

パッケージのコンセプトは初めてです。ここでの私の質問は、それらが同じパッケージに含まれていなくても、B が A のオブジェクトをどのように作成できるかということです。

4

4 に答える 4

1

public class 宣言を使用すると、 に移動しpublic access levelます。import a.A;パブリック クラスは、完全なクラス名を使用または提供することにより、さまざまなパッケージからアクセスできますnew a.A().f1()

于 2012-08-17T19:07:18.523 に答える
0

B は、クラス A を使用する必要がある場合、他のパッケージからクラス Aをインポートします (または完全修飾名を使用できます) 。インポートにより、他のパッケージのクラスが別のパッケージのクラスを参照できるようになります。ただし、これはscopingを使用してさらに検索調整できます。

両方が同じフォルダーにあり、パッケージを明示的に使用していない場合、両方とも既定のパッケージに含まれます。また、クラスが同じパッケージ内にある場合、それらを使用しているときにクラスを明示的にインポートする必要はありません。

于 2012-08-17T18:55:37.247 に答える
-1

Java のアクセス修飾子について知っておく必要があります。クラスが public の場合、インポートするだけでどこからでもアクセスできます。

理解を深めるために、以下のリンクを参照してください

http://javapapers.com/core-java/access-modifiers-in-Java-explain/

于 2012-08-17T19:02:17.720 に答える
-1

Java には import と呼ばれるものがあり、現在のパッケージにインポートしてメソッドまたはメンバーにアクセスできますが、それらは public (パッケージ全体で表示可能) または protected (サブクラスから表示可能) である必要があります。

于 2015-07-02T07:47:33.283 に答える