Java 刷题10-28-2

2019.09.10 一面

  1. hashmap的实现原理?

数组加链表

  1. hashmap的扩容是怎么做的?

当容量到达一个负载因子时,总容量的0.75,就会2倍扩容,然后重新调整位置。

  1. ConcurrentHashMap 和 HashMap 相比的差别?它是怎么保证线程安全的?

ConcurrentHashMap底层采用CAS操作,线程安全

  1. 你了解的设计模式有哪些能说一下吗?

单例模式,工厂模式

与,或,异或

  1. 动态代理用 JDK Proxy 和 CGLib 有什么区别?
  2. Java 的位操作(& | ^)能说一下吗?
  3. 一个数组,里面的数字都是成对出现的(有两个一样的),只有一个只出现了一次,有什么方法可以找出这个单独出现的数?
  1. 数据库索引的原理?(索引的数据结构)

B+ 树

  1. 分页查询的过程是什么样的?
  2. 当表很大的时候,有什么方法可以优化最后几页的查询?考虑数据只有逻辑删除,没有物理删除的情况,即,不考虑删除操作。
  3. 索引覆盖知道吗?
  4. redis 里hash数据结构,怎么给其中的一个 field 赋值?
  5. 如何保证多次重复 post 操作只做一次?
  6. linux 的命令知道哪些?
  7. 网络端口怎么看?

netstat -an

  1. 远程登陆的命令?

ssh

  1. 如果要在日志中查一个关键字,可以怎么做?

grep '关键字' 日志

  1. 工作中遇到问题会怎么解决?
  2. 自己对工作环境的要求是怎么样的?

2019.10.12 二面

  1. Object 类里面的方法有哪些?
  2. wait() 和 notify() 方法的实现原理?和类中其他方法的实现有什么不同?
  3. native 方法知道吗?自己写过吗?

本地方法

  1. String 的 toString() 方法是怎么实现的?
  2. String 和 StringBuilder 有什么区别?(说一个可变一个不可变)
  3. 为什么 StringBuilder 可变,String 不可变?

String 的byte数组有final关键字

  1. StringBuilder 和 String 有长度限制吗?
  2. Java中的反射是什么?如何通过反射的方式获取一个对象实例?
  3. 获取一个类的Class对象的方法有哪些?
  4. 使用 JSON 进行数据交互的好处有哪些?
  5. 常用的 json 数据处理工具有哪些?
  6. RPC 了解多少?
  7. Spring 框架为 web 开发者做了哪些事情?
  8. 简历中写到嵌套事务,使用的场景是什么?
  9. 嵌套事务不一定安全,有什么方式可以保证多个数据库操作的最终一致性?(面试官:分布式事务一致性问题,消息中间件是一种解决方式)
  10. MySQL索引的数据结构有哪些?
  11. MySQL 为什么选用 B+ 树做索引?
  12. 如何进行 SQL 优化?
  13. 写sql:学生表、课程表、成绩表。1)查每个学生的平均成绩和学号;2)查询总分大于500分的学生的姓名和总分。
  14. 实现二叉树的后序遍历。
  15. 自己平时的学习方式是怎么样的?


 

京东提前批

一面

  1. 项目构成
  2. 作为项目组长怎么分工的
  3. 采用什么开发
  4. 讲讲volatile,可见性举个例子
  5. 你说你了解juc,你说说juc,举个例子
  6. ArrayList和LinkedList
  7. 设计模式,项目中运用了吗
  8. 说说你的优势吧
    1. 说了自己喜欢看基础,面试官说那是底层,是加分项,
    2. 应该重运用,不能纯理论
  9. 最后问了面试官建议,让我多运用运用,底层是加分项,首先得基础好

8.13 智能供应链部一面

  1. 自我介绍
  2. jvm内存模型,GC

线程独有的虚拟机栈,本地栈,程序计数器,线程共享的有堆,方法区

  1. 类加载机制

双亲委派机制,类加载器分为启动,扩展,应用程序,类加载的时候先调用其父类方法,父类加载不成功,在调用当前方法

  1. ClassLoader的分类

启动,扩展,应用

  1. JDK1.8新特性,主要问了流Stream
  2. hashmap
  3. 聊聊框架,SpringBoot,spring,springmvc三者关系
  4. spring AOP
  5. 基于spring的应用,我想让这个程序启动之后,然后再打印一个log,或者一个定时任务,这个怎么实现
  6. AOP 两种代理的区别,什么时候用
  7. mybatis的一个接口,一个xml文件,执行SQL语句是怎么实现
  8. synchronized和volatile
  9. maven的scope有几种
  10. MySQL优化
  11. Redis的数据类型
  12. 项目经验,登录页面怎么做的,越细越好
    1. 后台怎么获取到登录人的
      • 我说了requestparam,好像不是很好
  13. cookie和session

8.14 智能供应链部二面

  1. 项目
  2. 根据项目负责的一些点提新的需求让我设计
  3. MySQL索引B+树问题,为什么B+

主要就是项目问的多

贝壳找房(三轮面过后挂)

至今提前批的现场面,流程快,每轮面试间隔就5分钟,屁股都没有坐热,面完之后,自我感觉挺好的,问的也不难,9.4问HR结果,挂了
8.24:

一面:

  1. 自我介绍
  2. 项目
  3. 手撕反转链表
  4. Java基础你还了解哪些
    1. 我说了多态的两种形式
    2. 看过ArrayList和LinkedList源码
  5. AOP
  6. tcp三次握手
  7. 索引你用过吗
  8. 高并发知识你了解什么
    1. 说了synchronized、ReentrantLock、volatile
      • volatile的原理知道是什么吗?
        1. 我说了JMM,面试官说不是
  9. 线程池几种你了解过吗
    1. 说了几种线程池
      • 继续问我线程池的区别,线程池参数的各自含义
      • 什么时候才会达到最大线程数
  10. GC说一说吧
  11. 类加载机制

二面:感觉很重业务运用

  1. 自我介绍
  2. 抽象类和接口的区别
    1. 能不能用一个设计模式来说明
    2. 设计模式你都了解哪些
  3. int和Integer区别
  4. Session和cookies的区别
  5. HTTP在哪一层
    1. 我说了应用层
  6. HTTP的状态码说一说
  7. OOA,OOD,OOP是什么说一下
  8. 数据库的乐观锁和悲观锁了解吗
    1. 如果给数据库加行级锁,怎么操作
  9. 索引了解吗
  10. 高并发说一说吧
    1. 我说了synchronized、volatile、ReentrantLock
  11. 说说你的优点和缺点吧
  12. 你认为最开心和最难过的事是什么
  13. 你认为有什么书对你影响比较大,不限类型
  14. 有什么想问我的

HR面:

  1. 你感觉前两轮面试如何
  2. 你家里人对你工作的看法
  3. 想去什么公司
  4. 了解贝壳吗
  5. 优缺点
  6. 为什么不考研
  7. 能提前来实习是吧
  8. 有什么想问我的

阿里(二面挂):

菜鸟网络内推

8.22:一面:

  1. 全程就撕项目,提新的需求给方案
  2. tcp udp区别
  3. session和cookie区别

8.26:二面:

  1. 哈夫曼树原理
  2. 一致性哈希算法
  3. UDP不可靠会丢包,为什么还用它
  4. 后面就是开始聊人生了,具体忘记了

8.28:拒信:

多益网络(挂)

7.17一面:

  1. 自我介绍

  2. 互联网加班怎么看?

  3. 项目

  4. 给定一个正整数n, 输出1到n的所有排列
    输入 3
    输出
    123, 132, 213, 231, 312, 321

  5. 用什么语言开发?

  6. 如果让你建议小白学习Java,你推荐看什么书?

    1. Java核心技术卷和视频相结合
  7. Java的缺点,跟c++和c比?

    1. Java比c++慢
  8. 排序算法,哪些是稳定的

  9. 解决哈希冲突的方法?

  10. 有其他公司的offer吗?

    1. 没有,目前就投了多益
  11. 做了我们的IQ测试,感觉如何,感觉难不难,是不是提前时间完成的

Bigo(二面挂)

9.2一面:

  1. 自我介绍

  2. 分代收集算法

  3. 什么参数能够调整新生代的比例?

  1. 如何一个程序频繁的发生Full GC,有什么办法改善这个情况?

  2. 标记-清除和标记整理区别?

  1. 程序发生内存泄漏,你会怎么去查这个问题?
  1. 讲一下hashmap的数据结构吧
  1. ConcurrentHashMap
  1. Java如何实现线程池

  2. Java实现线程同步有哪些方式?

  3. 原子类你用过吗?

    • 用过,AtomicInteger,底层是用的CAS实现的
    1. CAS怎么实现的
    2. CAS本质性实现原理是什么?
    3. 是这样的,但是不是我想问的,哈哈哈(邪恶的笑)
  4. 进程和线程调度算法?

  1. 讲讲数据库吧,数据库引擎
  1. select count(*) form 表 用哪个引擎快一点
  1. 组合索引是a,b,select 语句 where b = 1 and c = 2
  1. like 走索引吗
  1. 邪恶一笑,where a = 1 ,b = 2 OR b =3 走索引吧
  1. 如何查看慢查询
  1. 如何查看SQL语句的每一个查询计划,就是每一步消化多少毫秒
  1. 你自己还可以讲一下其他SQL语句优化

  2. Redis基本数据类型

  3. 发现服务器上TIMEWAIT(我听成摊位)状态的TCP过多是什么问题?

  4. 说说项目吧,不用太详细,讲一个难点吧

9.12二面:

  1. 根据前序中序生成树
  2. 还有一个算法题忘了
  3. 线程池参数,execute(),里面那个是实现了什么接口
  4. 单例模式
  5. 设计题:在控制层,记录访问次数,每次访问,count++,我说这个不安全,加锁可以保证安全,他说还有其他的吗

滴滴(目前没有收到结果,也没有二面)

9.16:一面(1小时20分钟)

  1. Java集合说一说吧set ,list,map都问了一遍

  2. TreeSet和HashSet区别

  1. hashmap和concurrenthashmap

  2. 线程池用过没,线程池的参数什么意思,每个都问了一遍

  3. 拒绝策略说一说

  4. synchroBlockQueue 到底可以存几个

  5. 锁用过没

  1. 锁的什么方法你用过
  2. lock和tryLock区别
  1. lock的公平锁和非公平锁的怎么实现的(源码级别),不限于概念

  2. 类加载机制,不是类加载几个过程

  3. 如果多个类加载器加载同一个类,会出现什么情况

  4. tomcat的加载过程

  1. spring的生命周期,不是bean
  1. AOP

  2. ASM怎么实现cglib

  3. mybatis的插件用过没,

  1. 项目,

    ​ 背景:暂存数据,每一次把用户填写的数据暂存到数据库,暂存字段,0暂存,1正式存

    1. 如果实现a用户暂存数据1,b用户暂存数据2,实现a下次只能看见数据1,

      给car表加一个操作人字段,每次判断

    2. car表怎么设计的,

      id,车牌号,xxx,xx,暂存标记

    3. car表主键是什么

      主键id

    4. 主键id有什么规则吗?

      自增长

    5. 如果一个车牌号重复了,添加的时候怎么处理的

      每次填入的时候,都会在数据库里查询一下,判断是否有

    6. 如果4个人同时填入车牌号为888的车,怎么处理这个问题

      叭叭叭半天,给添加这个操作加锁,给判断重复车牌号方法加锁,

    7. 加锁为消化资源,你考虑一下在数据库进行操作吧

      叭叭了隔离级别,说了mysql默认隔离级别(可重复读)

      此时感觉不对了,没有get到点上了

    8. 隔离级别是解决什么问题的啊

      并发的时候问题,叭叭脏读等问题,

    9. 隔离级别什么时候才出来啊?

      不知道

      这个点没有回答好

  2. 数据库索引,索引类别

    唯一索引,聚簇索引,非聚簇索引

  3. 聚簇索引和非聚簇索引区别

  4. 二叉树和B+树的区别

  1. 那如果把二叉树弄成,所有数据都存在叶子节点呢
  1. 那如果平衡二叉树呢
  1. 怎么减少IO操作的
  1. 磁盘上所有文件都是B+树存储吗?
  1. 磁盘上怎么存储这些数据的

  2. 你了解什么文件格式

  1. Linux操作系统了解过吗
  1. Linux命令用过哪些
  1. Linux根目录下有哪些文件夹
  1. 手撕翻转树,递归+递推

  2. 手撕最小路径和

网易互娱(目前没有收到结果,也没有二面)

9.26 一面:27分钟

  1. 自我介绍

  2. 面向对象聊聊吧

  3. 构造函数能不能继承

  4. Java基本类型

  5. 那基本类型的比较用什么进行比较的啊,是否比较

  6. 对象比较呢

  1. 对象的比较是用的什么原理比较吗

  2. hashcode了解过吗

  3. 简单介绍一下list和set的区别吗

  1. 查找大量数据里是否存在某一数据
  1. 优化高效的办法
  1. 项目

  2. MySQL语法,海量数据分页吧,用什么实现

  1. MySQL常见的引擎,两者区别

  2. 查询效率来说,哪个快一点

  1. MySQL用的什么版本,5.5和5.7版本的一个区别
  1. 平常用到json吗?

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值