面试详解

一场饿了么的面试

前几天通过朋友的推荐,参加了饿了么的java开发的面试,所以在此来介绍一下具体问的问题吧。
现在的普遍面试都是从浅到深的,从一个小的方面来引出更深层次的知识。
所以问的知识点主要分为以下几部分:
1.java基本,这些都属于基本的基本
对于jsdk中所有常用包的了解,
如:java.net;java.util;java.lang,java.io等;
对于面向对象的理解。
2.对于集合的使用
ArrayList的实现
LinkedList的实现
ArrayList与LinkedList的相同点与不同点。
HashMap的实现
LinkedHashMap的实现

3.对于多线程的问题
线程同步的方法
线程同步的实现
volatile的使用及原理
线程同步的特性(原子性,可见性,有序性)
线程之间的通信问题。(生产者与消费者问题)
锁的几种类型以锁之间的转换

4.concurrent包下的并发类
相关的原子类
相关的一些并发集合:
CopyAndWriteXX的实现
ConcurrentHashMap的实现
相关的阻塞队列与并发队列的区别
关于线程池的实现,
线程池中的相关参数与运行机制
CountDownLatch与CyclicBarrier的使用

5.网络方面:
TCP的三次握手与四次挥手。
网络七层架构

6.linux
安装软件的相关命令
查看cpu的使用情况
查看某进程cpu的使用情况

7.jvm
内存分布
分代算法
jvm优化
可达性算法
循环引用的解决方法

8.中间件的使用
消息中间件的掌握(activeMQ、RabbitMQ)
exchange的类型:
redis的使用
版本控制工具的了解: git、SVN

9.框架方面
mybatis的一级缓存与二级缓存
spring的核心包
spring的启动流程
spring aop的实现
spring的循环注入的解决。

10.项目方面
项目的具体描述
自己的主要职责
中间遇到的问题

11.代码方面
给定n个数,计算他们分别在2^0~2^m下的个数;
如: 2 3 5 6 7
0~2: 0;
2~4 : 2;
4~8:3;

在多线程下对于一个请求进行限流处理

编写一个单例模式。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值