public class OuterClass {
  private class InterClass {
    public InterClass() {
      System.out.println("InterClass Create");
    }
  }

  public OuterClass() {
    InterClass ic = new InterClass();
    System.out.println("OuterClass Create");
  }

  public static void main(String[] args) {
    OuterClass oc = new OuterClass();
  }
}
运行结果
InterClass Create
OuterClass Create

提供如下代码:
public class OuterClass {
  private double d1 = 1.0;
  // insert code here
}
You need to insert an inner class declaration at line 3. Which two inner class declarations are
valid?(Choose two.)
A. class InnerOne{
public static double methoda() {return d1;}
}
B. public class InnerOne{
static double methoda() {return d1;}
}
C. private class InnerOne{
double methoda() {return d1;}
}
D. static class InnerOne{
protected double methoda() {return d1;}
}
E. abstract class InnerOne{
public abstract double methoda();
}
说明如下:
一.静态内部类可以有静态成员,而非静态内部类则不能有静态成员。 故 A、B 错
二.静态内部类的非静态成员可以访问外部类的静态变量,而不可访问外部类的非静态变量;return d1 出错。
故 D 错
三.非静态内部类的非静态成员可以访问外部类的非静态变量。 故 C 正确
四.答案为C、E
快乐渡过每一天,减肥坚持每一天