一:阿康健康
地址:广州市白云区同泰路116号4号楼301
过去之后,填完个人信息和和笔试,说他们公司现在只招Java高级工程师,所以我就GG了
比较遗憾的是没有见到技术官
现在把他们的公司的Java笔试题晒出来看看
这里给出我自己的见解:
1:Java的四大特性分别是什么,对每个特性简单解释一下
- 抽象 :就是将一类对象共同的特征属性和共同的行为向上抽取而形成抽象
- 封装:隐藏代码内部实现细节,提供公有方法对外进行访问
- 继承:是为子类复用父类代码而设计,父类做完的事情,子类不用做
- 多态:多态是建立在继承的基础上,指不同对象对同一行为的不同实现
2:List,Set,Map 是不是都继承Collection接口?
这个问题也太过基础了吧。
Collection
|——List
|——Set
Map
|——HashMap
|——TreeMap
Map 接口没有实现Collection接口,Map有自己的体系
3:说出ArrayList,Vector,LinkedList的存储性能和特性
ArrayList:初始容量为10,以1.5倍扩容,线程不安全,底层数据结构为数组,查找快,增删改慢
Vector:元老级集合,线程安全,以两倍扩容
LinkedList:底层数据结构为链表,线程不安全,查找慢,增删改快
4:写出一个Singleton出来
我当时写的是单例中的枚举式:
public class EnumSingleton { private EnumSingleton() { } public enum EnumInstance { INSTANCE; private EnumSingleton instance; EnumInstance() { instance = new EnumSingleton(); } public EnumSingleton getInstance() { return instance; } } }
//5:代码改错题---感觉这题没什么用
6:Redis相比memcached有哪些优势?
memcached所有的值都是简单的字符串,redis支持更为丰富的数据类型
redis可以持久化数据,memcached不能
7:编写一个消息生产者和消息消费者
class Producer implements Runnable { private final BlockingQueue queue; Producer(BlockingQueue q) { queue = q; } public void run() { try { while (true) { queue.put(produce()); } } catch (InterruptedException ex) { //... handle ... } } Object produce() { //... } } class Consumer implements Runnable { private final BlockingQueue queue; Consumer(BlockingQueue q) { queue = q; } public void run() { try { while (true) { consume(queue.take()); } } catch (InterruptedException ex) { // ... handle ... } } void consume(Object x) { //... } }
8:zookeeper通知机制
9:用Spring 配置声明暴露服务
10:通过Spring 配置引用远程服务
11:秒杀的功能怎样设计
二:千鸟互联
地址:广州市天河区车陂大岗路16号联合社区西区8栋408
过去之后,填完个人信息,没有笔试题,就被HR小姐姐领去谈话了。HR小姐姐还是挺年轻漂亮的,说话也很可爱。
之后就来了两个面试官,看招聘要求应该招的是中级工程师,要求本科,工资给到10-12k,其中有一个面试官是完全不说话的,
我就不知这个面试官要过来干嘛?
面试官第一个问题:第一个问题是MySQL数据库的底层实现,糟糕,这个问题还真不懂,赶紧回家科普一下。
第二个问题是:在我的引导下,面试官问了Redis和memchached的主要区别
问完之后就很少问技术问题了,我就对面试官说希望他们多问点问题。然后自己说了一堆技术。之后就没了。
回到宿舍之后,再进去boss直聘,发现停止招聘了。可能是找到了
--2019.07.12 18:11