Java面试题之九 (转) 二

四十六、Math.round(11.5)等於多少? Math.round(-11.5)等於多少?

对于这个题,只要弄清楚Math提供的三个与取整相关的方法就OK了。

1.ceil,英文含义是天花板,该方法就表示向上取整,Math.ceil(11.3)的结果为12,Math.ceil(-11.6)的结果为-11。

2.floor,英文含义是地板,该方法就表示向下取整,Math.floor(11.6)的结果是11,Math.floor(-11.4)的结果-12。

3.round,表示“四舍五入”,算法为Math.floor(x+0.5),即将原来的数字加上0.5后再向下取整,Math.round(11.5)的结果是12,Math.round(-11.5)的结果为-11。

四十七、Java 有没有goto?

java中的保留字,现在没有在java中使用。与此类似的还有个叫const。

四十八、接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?

接口可以继承接口,用来拓展接口。抽象类也可以实现接口。抽象类也可以继承实体类,只要该实体类有明确的构造方法。其实,任何抽象类最终都是Object的子类。

四十九、abstract 的method是否可同时是static,是否可同时是native,是否可同时是synchronized?

都不行。理由:

1.static修饰的方法是不能被重写的,而abstract修饰的方法是没有给出实现的,必须要求子类去实现。很明显,它们是矛盾的。

2.native修饰的方法是要移交给本地操作系统,由其他语言来实现,而abstract 是交给子类实现,两者矛盾。

3.synchronized表示同步,是对具体操作进行同步,而abstract 修饰的方法没有给出具体操作的实现,所以两者矛盾。但是在子类重写后可以添加同步。

五十、数组有没有length()这个方法? String 有没有length()这个方法?

数组是没有length()这个方法的,但有length这个属性。String有length()这个方法。


你可能感兴趣的:(Java面试题之九 (转) 二)