模拟试题:SCJP035经典104题分析笔记(一)
1.
1) public class returnit{
3) return (short)x/y*2;
5) }
题意:第2行中methoda方的正确返回值类型是什么?
解答:判断return后的表达式的值类型即可,(short)的强制转换仅为x,根据自动提升原则表达式的值被提升到y的类型既double,所以答案为double 。
(2)、二元操作符(如+、-、*、/)当其操作的对象是基本数据类型时,会把其操作的变量自动提升为至少到int型,主要针对byte和short型。例如如下代码会出错:
a = 1;
c = a + b;//编译指示这行出错了,possible loss of precision
2.
2) public float getnum(){return 3.0f;}
4)
6)
which method, placed at line 6, will cause a compiler error?
b. public void getnum(){}
d. public double getnum(float d){return 4.0d;}
分析: 此为一道同时考察overload和override的问题。overload是利用同一个函数名和不同的参数形式来完成不同的功能,不同的参数形式的意思是:有和无参数的区别;参数个数的区别;参数类型的区别和参数的排列方式的区别。overload不能利用返回值来区分。overload现象可出现在同类或父类与继承类中。override的是类继承过程中出现的现象,是对父类方法的改写,所以必须满足以下条件:1、方法名相同;2、返回类型相同;3、参数完全相同。
注意: 考察多个知识点时要综合分析,但首先要保持清醒,弄清考察的意向。
编辑推荐:
温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)
点击加载更多评论>>