直接创建一个成员内部类的对象,是不是会先创建一个匿名的外部类对象?

public class Test3 {
    public static void main(String[] args) {
        Out.inner in = new Out().new inner();
    }
}

class Out{
    private String name;
    class inner{

    }
}

是不是在创建内部类对象时就先创建了一个匿名的外部类对象?

在main方法中创建内部类对象时,不会创建对应的外部类对象,main方法是static静态方法,与所在的java类没有关系,是独立于该java类的方法。

肯定会的呀,内部类对象的创建必须是基于外部类的对象才能创建的,否则会有语法错误的。