java抽象类面试题

来源:互联网 发布:php 排列组合算法 编辑:程序博客网 时间:2024/06/06 03:57

前几天见到一个面试题,觉得很有意思,因为当时我好久没有接触到java代码,以至于居然懵比了......


题目是这个样子的,请修改下面的java 代码,并找出原因:


 abstract class Thing {
private abstract String doSomething();
}


看到这个题后,我居然连脑子都没过,说这个抽象类的方法有问题,然后,巴拉巴拉.......面试官很明显征战沙场好多年,没有当面吐槽我,我想最后两个人一定会默默的吐槽好久,我居然那么义正言辞,面不改色的说着错误的答案。

最后,面试官说,回去等通知吧,那时我还是信心满满,直到推开门的那一刻,我猛然想起,我的天,我好像哪里出错了,就是这道题出错了......


先透漏正确的修改方法,就是将private 去掉。


原因是abstract 类主要就是为了满足继承,而当有了private 时就代表着这个方法被私有化,不能被继承,所以它的出现,不满足abstract类出现的逻辑性.

然后就是比较一下abstract类与interface的区别,一定要注意,interface 是一个特殊存在的abstract,也就是interface满足的,abstract类都满足,此时我已经是泪流满面,回想一下我对面试官们说了些什么,真是句句大脸,果真不能这样轻视java的基础,以此为鉴,还是要好好学习,从零做起,要不项目做的再多也会......哎,一把辛酸泪

0 0
原创粉丝点击