当我问java问题的时候我在问些什么
来源:互联网 发布:mac怎么创建html文件 编辑:程序博客网 时间:2024/04/27 22:58
最近团队扩张比较快,不管是开发还是运维都需要懂java的人,前后面过几十人有了。我觉得面试题除了要能评价面试者的技术水平,还要看态度是否严谨。这几天我问得比较多的一个题是关于public static void main(String[] args)的:
“所有java程序的入口都是个main函数。”
说出这句,通常有10%的大神会打断我说,不一定!这些大神基本上都是搞过web开发的,通常我会恭喜这些大神,你的面试提前结束了,因为你根本不了解容器干了些什么。
“main函数的写法通常是publicstatic void main(String[] args),请解释每一个单词的作用。”
下面就进入和面试者的pk阶段了。
public:基本上都知道是用来定义可见性的,而且是全局的。补充提问“java有几种可见性”,绝大多数人都只知道public,protected,private,知道default的不到10%。这10%中再问“这四种可见性在包、类、子类中是否可见”,能说明白的几乎没有。
static:略多余一半的人知道表示静态方法(竟然还有人说这里的用法是静态变量,这明明是个方法好吗),补充“静态方法和非静态的方法有什么区别”,大概10%的人可以说明白,再补充“如果没有static,main能作为入口运行吗”,几乎全挂。
void:基本上都知道用来定义无返回值(有人跟我说返回的是空值),补充“现在我有一个需求,要像c++一样让main返回一个int值,0代表正常结束,其他值代表故障码,这么修改以后main能作为入口运行吗”,几乎全挂。
main:当然是方法名了,这都不知道的话应该不会来面试。
String[]:基本上都知道用来定义main的输入参数是一个String数组。看心情可能会补充“分别用for和foreach遍历一下这个数组”,能写对的不到一半。必补充的是“有一天我笔误了,把String[]写成了String…,main能作为入口运行吗”,无一例外全挂。
args:当然是参数名。
总结:
1,我想看看每个人从学java第一天就接触的一个语法,究竟有多少人深究过,如果连这都不研究,很难指望你还能主动研究什么
2,我承认我的问题是比较阴险的,但是我宁可招一个坦承“不知道”的人,也不愿意招一个瞎掰的人,瞎掰的人进来一定是害群之马
3,鉴于我面的大多为应届生和工作3年以内的年轻人,这个结果不代表市场普遍情况。但我还是觉得,现在市场上的java程序员和老一辈无产阶级革命家差太远了……
- 当我问java问题的时候我在问些什么
- 当我debug的时候我在想些什么
- 当你输入一个网址的时候,实际会发生什么?(赛门铁克电话面试我,曾经问过这个问题,最后一问,我只能说不知道)
- 当VC问你商业模式的时候 他们在问什么?
- 当面试官问「你有什么要问我的吗」时,应该问什么?
- 当我在写程序的时候,我究竟在写些什么?
- 当我谈架构的时候,我谈些什么?
- 当她问「为什么喜欢我」的时候,你就已经输了
- 当我闲困的时候,我在想些什么
- 我面试到底问什么?
- 我面试到底问什么?
- 我面试到底问什么?
- 有什么关于万维链的问题都可以关注我问我哦。
- 我问的
- 【灌水】我就是想知道我都会问些什么蠢问题
- 小段问我的多米诺问题
- 我常问的android面试问题
- 问我
- cocos creator关于actionTag有了变更
- 2016年上半年阅读书单
- The Skyline Problem
- LeetCode - 34. Search for a Range
- numpy欧氏距离和余弦相似度
- 当我问java问题的时候我在问些什么
- 2-2element 选择器(寻找铅笔)
- php编译安装curl
- Python学习笔记2:Python快速入门
- 2-3.class 选择器(寻找红色铅笔)
- hdu 1062 Text Reverse
- 326. Power of Three
- numpy学习
- NSIS变量平衡