今天上午九点,完成了黑马面试,下面把一些面试的问题分享给大家,希望对大家有帮助。
面试流程和论坛帖子里说的差不多,刚开始是自我介绍,感觉自己说的有点少,就说了自己的姓名、年龄、家庭和为什么想来黑马等一些基本信息。之后是java基础知识的提问,主要有(具体题目记不清了,只是大概的,给大家参考下):
1.对面向对象的理解
2.给你一个字符串,有几种方式进行反转
3.对集合框架的理解
4.map集合中存储相同的键会发生什么(值会被覆盖)
5.方法重载只能在同一个类中吗(我回答的是,后来自己敲代码验证下子父类中也可以重载)
6.(转换流)inputstreamReader表示字节转字符 ; OutputStreamWriter表示字符字节
7.如何复制一个文件夹
8.什么是同步,为什么同步
9.如何通过实习Runnable接口创建线程
10.什么是暴力反射
11.有.class文件,如何获取和使用方法
12.什么是单利设计模式,如何保证只有一个实例
13.接口有构造方法吗?里面可以自定义变量吗
14.什么是多态?是如何调用方法的
基本就这么多,自己都没想到居然有十多个问题。下面把3道编程题分享给大家:
1.编写一个类,其中包含两个排序的方法sort(),参数不同,当键盘录入的是一串整数,就按照从小到大的 顺序输出,如果键盘录入的是一个字符串,就将字符串反序输出
2.模拟三位老师同时分发60份学习笔记,每个老师相当于一个线程
3.已知一个int类型的数组,用冒泡排序法将数组中的元素进行升序排列。
我感觉第一个有些难度,考察了方法重载、String类型转int类型、反转字符串、int类型转String在转字符数组、Arrays类sort和reverse方法的使用。主要是怎么判断你输入的是整数还是字符串,本来想要BigInteger判断的,发现不行,后来是用正则进行的判断,算是吧这题做出来了。
老师说我面试过了,现在还没看到分数,我报的是6月份那期,老师说5与中旬左右会有一个回访。所以,还有将近两个月时间可以复习和预习。希望以上可以对大家有所帮助,谢谢! |
|