私はJavaに頭を突っ込んでいて、この例に出くわしました
interface Nose{
public int iMethod();
}
abstract class Picasso implements Nose{
public int iMethod(){
return 7;
}
}
class Clowns extends Picasso{}
class Acts extends Picasso{
public int iMethod(){
return 5;
}
}
何も public と宣言されていないため、これらのクラスを別のファイルから呼び出すことはできませんか? 別のファイルがあります
public class Of76 extends Clowns{
public static void main(String[] args) {
Nose [] i = new Nose[3];
i[0] = new Acts();
i[1] = new Clowns();
i[2] = new Of76();
for(int x = 0; x < 3; x++) {
System.out.println(i[x].iMethod()+" "+i[x].getClass());
}
}
}
したがって、この例では、クラス Of76 は、パブリック クラスを持たない別のファイルからクラスを作成できます。最初のファイルがこれらすべてのクラスを持つことができる理由と、それらが別々のクラスにない理由について混乱しています。パブリックではないクラスはデフォルトでプライベートであり、同じクラス内でのみ呼び出すことができると読みました。Nose ファイル内のすべては、その Nose ファイル内でのみ呼び出すことができますか?