たとえば、私は持っていA.javaます。私がA.java持っている:
public class A {
// normal
}
class B { // cannot declare: public class B
}
そして、と同じパッケージでA.java。私は作成C.javaして宣言します:
public class C {
public void methodC() {
A a = new A();
B b = new B(); // no error -> B is a public class
}
}
ファイルに新しいクラスBを作成した場合C.java。C.javaCは、ファイルではなく、ファイル内のクラスBを参照しますA.java。
class B {
}
public class C {
public void methodC() {
B b = new B(); //this B refer to C.java rather than A.java
}
}
それで、私はここでいくつかの問題を見ました:同じパッケージに、2つの同じクラスがあります。それで、私が作成するときD.java、どのクラスBが参照されるかをどうやって知ることができますか?
また、クラスAとクラスCの外で宣言した場合、実際のクラスBの種類は何かという質問があります。この点で、私は非常にイライラします。
ありがとう :)
