往OuterClass类的代码段中插入内部类声明, 哪一个是错误的:
public class OuterClass{
private float f=1.0f;
//插入代码到这里
}
- class InnerClass{
public static float func(){return f;} // 非静态内部类,不能有静态方法
} - abstract class InnerClass{
public abstract float func(){} //抽象方法不能有方法体
} - static class InnerClass{
protected static float func(){return f;} // 静态方法无法访问 非静态属性
} - public class InnerClass{
static float func(){return f;} // 错误在于,非静态内部类,不可以有静态方法
}
(A、B、C、D)
主要考核了这几个知识点:
1.静态内部类才可以声明静态方法、才能使用静态代码块、静态属性
2.静态方法不可以使用非静态变量
3.抽象方法不可以有函数体
4、只能有一个 public(貌似内部类设置为public 正常运行)