首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下面程序段的输出结果是 class Base { int i; Base() { add(1); } void ad
下面程序段的输出结果是 class Base { int i; Base() { add(1); } void ad
admin
2010-02-22
58
问题
下面程序段的输出结果是 class Base { int i; Base() { add(1); } void add(int v) { i+=v; } void print() { System.out.println(i); } } class Extension extends Base { Extension() { add(2); } void add(int v) { i+=*2; } } public class Test { public static void main(String args[]) { bogo(new Extension()); } static void bogo(Base b) { b.add(8); b.print(); } }
选项
A、9
B、18
C、20
D、22
答案
8
解析
本题考查继承和构造函数的用法。首先要明确对一个类的继承是指在父类的基础上构建了一个子类,子类继承了父类的方法和状态。题目所给程序段创建的是 Extension类的实例,在运行时,从main()函数进入程序,所有调用add()方法的过程将始终和Extension类的add()方法动态绑定。初始值:i=O;创建实例newExtension();先调用父类的默认构造函数Base(),并在父类的默认构造函数中执行add(1),i=0+1x2,所以i=2,再调用子类的默认构造函数Extension(),子类的默认构造函数中执行 add(2),i=2+2x2,所以i=6:执行add(8);i=6+8x2,因此,最终i=22,正确答案为选项D。
转载请注明原文地址:https://www.kaotiyun.com/show/yvnp777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
在视图设计器中有,而在查询设计器中没有的选项卡是
要将显示日期值时所用的分隔符设置为竖杠“|”错误的设置命令是
在VisualFoxPro中,要想将日期型或日期时间型数据中的年份用4位数字显示,应当使用设置命令
在关系数据库中,用来表示实体间联系的是
下面对表单若干常用事件的描述中,正确的是
在VisualFoxPro中,下面关于属性、方法和事件的叙述错误的是
在结构化程序设计中,模块划分的原则是
要将一个弹出式菜单作为某个控件的快捷菜单,需要在该控件的某事件代码中调用弹出式菜单程序的命令。这个事件是
下面对对象概念描述错误的是
位运算表达式中,位运算符的优先级顺序为()。
随机试题
哪个规则规定有“延迟交货”()
在国际经济组织的成员资格类型中,享有和承担基本文件中规定的部分权利和义务的成员是()
手工Hct不影响血浆剩余量的是
制备缓释制剂时,加入阻滞剂的目的是
()主要为液氯,二氧化氯及次氯酸钙、次氯酸钠。
【2020年真题】某城市定向安置房工程建筑面积50200m2,包含3栋高层住宅楼,每栋16层,设计总高度49.95m,主体结构为框架剪力墙结构。建设单位C公司与施工总承包单位D公司签订了《定向安置房工程施工总承包合同》,D公司与劳务
会计报表使用者借助于资产负债表提供的会计信息,可以从中分析的有()。
行政机构改革所坚持的原则是精简机构、减少人员、压缩财政开支。()
将当前表中有删除标记的记录物理删除的命令是:
Generallyspeaking,aBritishiswidelyregardedasaquiet,shyandconservativepersonwhois【C1】______onlyamongthosewith
最新回复
(
0
)