sun测试题———选什么,为什么这么选?谢谢(java初学者请教)

icexin 2002-10-26 01:17:37
2. Given:
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();
}
...全文
60 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
北极猩猩 2002-10-30
  • 打赏
  • 举报
回复
静态环境不能引用动态成员。
非静态Inner Class不能拥有static成员
icexin 2002-10-30
  • 打赏
  • 举报
回复
谢谢了 搞定 真是会者不难,难者不会 结帖
qxjavajava 2002-10-30
  • 打赏
  • 举报
回复
llsoft(天堂鱼) 讲得挺好的。
松耦合紧内聚 2002-10-26
  • 打赏
  • 举报
回复
I see
llsoft 2002-10-26
  • 打赏
  • 举报
回复
选c,e。
试一下就知道了。

1、a,b,d都会提示以下错误:
non-static variable d1 cannot be referenced from a static context
也就是在静态(static)类和静态方法中是不能访非静态变量的。

2、同时,b还提示:
inner classes cannot have static declarations,
也就是非静态类中不能定义静态方法。
mercury1231 2002-10-26
  • 打赏
  • 举报
回复
c e?

50,596

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧