杭州天丽科技面试笔试题目解析:提升编译运行理解
4星 · 超过85%的资源 需积分: 9 128 浏览量
更新于2024-09-12
2
收藏 157KB DOC 举报
在本篇关于杭州天丽科技有限公司面试与笔试题目的资源中,主要涉及了Java编程的基础概念和面向对象编程的相关知识点。题目以选择题形式呈现,旨在考察应聘者对类继承、方法调用以及访问修饰符的理解。
首先,题目涉及到的是一个典型的Java类结构,包括一个基类`Base`和一个派生类`Derived`。`Base`类包含一个整型变量`i`初始化为99,以及一个公共方法`amethod()`,用于打印字符串"Base.amethod()"。`Derived`类继承自`Base`,并增加了一个额外的整型变量`i`值为-1,以及重写了父类的`amethod()`方法,使其打印字符串"Derived.amethod()"。
在`main`方法中,关键点在于第40行代码`Base b = new Derived();`,这表明在创建`Derived`类的对象时,虽然`Derived`类有自己的`amethod()`方法,但这里通过基类`Base`的引用`b`调用的是`Base`类的`amethod()`。这体现了Java的多态性,即子类可以覆盖或扩展父类的方法,但在没有明确指定调用哪个版本时,默认调用的是父类的方法。
接着,题目询问编译和运行这段代码会发生什么。根据Java的规则:
- 当执行`System.out.println(b.i)`时,由于`b`是`Derived`类型的对象,但在`Base`类中定义了`int i=99`,所以会输出`Derived`类的`i`值-1。
- 然后调用`b.amethod()`,因为`b`是`Base`类型的引用,所以会执行`Base`类的`amethod()`,输出"Base.amethod()"。
因此,正确答案是:A. `Derived.amethod() -1`,这代表会先打印出-1,然后执行基类的方法"Base.amethod()"。
这个题目考察了应聘者对面向对象编程(OOP)概念的理解,包括类的继承、实例化、方法调用和访问修饰符(在这个例子中,`amethod()`被声明为公共,可以被子类访问)。理解这些核心概念对于成功通过杭州天丽科技的面试和笔试至关重要,因为它们是编写高效、可维护的Java程序的基础。
2021-08-26 上传
2023-05-28 上传
2024-11-04 上传
2024-11-04 上传
2024-11-04 上传
chenbq02044
- 粉丝: 0
- 资源: 6
最新资源
- Aspose资源包:转PDF无水印学习工具
- Go语言控制台输入输出操作教程
- 红外遥控报警器原理及应用详解下载
- 控制卷筒纸侧面位置的先进装置技术解析
- 易语言加解密例程源码详解与实践
- SpringMVC客户管理系统:Hibernate与Bootstrap集成实践
- 深入理解JavaScript Set与WeakSet的使用
- 深入解析接收存储及发送装置的广播技术方法
- zyString模块1.0源码公开-易语言编程利器
- Android记分板UI设计:SimpleScoreboard的简洁与高效
- 量子网格列设置存储组件:开源解决方案
- 全面技术源码合集:CcVita Php Check v1.1
- 中军创易语言抢购软件:付款功能解析
- Python手动实现图像滤波教程
- MATLAB源代码实现基于DFT的量子传输分析
- 开源程序Hukoch.exe:简化食谱管理与导入功能