私は、抽象クラスをインスタンス化できないことを理解します。それでも、以下に示すようなコードを書くと、抽象的な親のサブクラスのインスタンスを生成します。 Javaの仕様によると、サブクラスオブジェクトはその親privateメンバーにアクセスできません。Do anonymous concreteサブクラスは抽象親プライベートフィールドを継承しますか?
匿名サブクラスオブジェクトが、抽象親クラスのプライベートフィールドに、 "i"に格納された値を出力することでアクセスできないということは私に困惑しています。どのような誤解がありますか?
public class Main {
public static void main (String [] args){
B myB = new B() {};
myB.print();
}}
public abstract class B {
private int i = 5;
public void print(){
System.out.println(i);
}}
ありがとうございました! – mowienay