列代码关于内部类的实现说法正确的是
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?
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