百度一面:
电话面试,问的东西比较广,时长34分59秒
1、自我介绍
2、介绍一下项目
3、知识点的连环攻击,问到你不会为止

  • GC回收算法
    主要有计数器算法和可达性算法
    计数器算法:即对象被引用 为其加一 ,未被引用,为其减一 ,如果计数器数字为0,即可将对象GC回收
    可达性算法(root):可达性算法是根据有向图的方式进行对象间关系的连接的,如果一个对象并没有被root进行有向图走向连接到的话,这个就可以进行GC回收
    如果相对一个对象进行回收,也可以手动调用System.gc()的方法

标记清除、标记整理、复制、分代
标记清除:就是将要被回收的对象标记出来,然后进行清除,但是这样会造成很多的,内存碎片
标记整理:就是同样将要被回收的对象标记出来,但是进行清除时,会将
后面的对象进行移动,减少了内存碎片的产生,但是会造成资源的浪费
复制:将内存区域分为了左右两个区域,将不需要回收的对象复制到另一边,但是这种情况会让我们实际能够进行应用的内存区域缩短了一半
分代:主要是将内存区域分为新生代和老年代,新生代包括eden和from suvior和to suvior区 比例时8:1:1,主要使用的是复制算法
老年代中存放的是在每一次换区都会为他们进行+1,好像+到6就可以被存放到老年代,然后老年代使用的就是标记整理算法了,可能也是在老年代的元素不会轻易的就被删除,所以使用标记整理不会那么的浪费资源,也不会产生内存碎片

GC在面试用友和阿里电面的时候都被问及了 jvm底层还是一般大厂比较看重的基础吧

  • 内存结构
    线程私有:
    程序计数器:起标识作用的(虚拟机字节码指令的地址)
    本地方法栈:本地方法native
    虚拟机栈:变量名 基本数据类型
    线程共享:
    堆:对象实例 数组
    方法区:类信息 常量 静态变量等

引出 下一个问题: 堆和栈的区别
主要从存储数据 GC回收 讲了一下
继而 引出 类加载机制
将字节码文件加载进入内存中 形成Class 当要生成对应的实体对象时再通过类加载器进行加载对应的Class,实例化对象,通过双亲委派机制

于是 何为双亲委派机制
就是子类加载器拿到实例化对象请求时 先不会自身去进行实例化,而是会将这个请求委派给自己的父类 当父类没有对应的Class时才会由自己进行类的加载与实例化

  • 关于了解的设计模式
    设计模式真是被问了太多次了 但是的确 没有太仔细了解过 除了平常使用时接触过的一些

  • 单例模式
    懒汉式(线程不安全,可以使用双检查锁机制)
    饿汉式(线程安全)
    举例: spring中 在ioc容器中为我们创建的对象就是默认单例模式的
    只有修改对应的scope属性才会更改

  • 代理模式
    分为静态代理和动态代理
    在mybatis中 对应的mapper接口和mapper映射文件之间的对应关系

  • 工厂模式
    主要是在spring中DI依赖注入时可以采用工厂方式注入

  • 又问了我关于线程池的一些操作,但由于我并没有实际操作过线程池,所以只是说自己听说过 主要是用来存放线程的

后来大部分问题都是关于数据库的
比如搜索引擎: innodb
使用的索引结构: b+树 多路平衡二叉树
多路平和二叉树 也是因为从根节点到每一个叶子节点的距离都相等,且满足左小于跟小于右,且b+树更支持范围查找,而Hash只支持等值查找

还有聚簇索引和非聚簇索引:
聚簇索引:即叶子节点之存储的是主键的信息,根据主键的信息你可以去查询到这一整行的信息
非聚簇索引:则是将整行信息全都存到了我对应的叶子节点上
还问了 关于redis数据库的一些信息
可以参考之前的那篇文章点他
补充
mysql数据库与redis数据库存储数据区别
mysql数据库是类似于表格存储的数据库,就是即使你在对应位置没有数据,他也会将对应的位置留出来,就是那种纵向存储
而redis数据库 是横向存储的,类似文本存储,有多少数据存多少,不会出现数据为空还要硬存的现象

百度二面:
主要就是对项目的了解,由于我的项目做的还蛮简单的,也没有太考虑到安全性管理权限方面的,面试官就我的项目管理权限方面进行了一些交流,面试官比较好,全程都在笑,还说我不要太紧张,觉得面试应该是一件轻松的事情吧,哪怕这一次没有机会进入贵公司,但是如果能够和这个行业的大佬们进行一次交谈,也会让自己受益匪浅的吧

用友一面几乎也问了很多和底层有关的知识点,高频出现的都有所整理了可以参考京东面试过程记录和hashmap底层原理
补充:在1.8以后之所以会使用数组+链表+红黑树的原因主要是链表的时间复杂度为O(n)而红黑树的数据结构为O(nlogn)
所以在发生大量的hash冲突时使用红黑树可以减少使用的时间

还问了关于锁的问题

  • 公平锁与非公平锁
    当时看过一眼,但是记得不太清了,所以面试官又给讲了一下
    公平锁:即当一个资源被锁定的时候,其他线程想要使用这个资源就会根据在线程队列中排队的顺序进行对资源的使用
    非公平锁:就是当这个被锁定的资源释放时,谁先抢到就是谁的
  • 然后我就讲了一下我了解过的乐观锁与悲观锁点他
  • 然后谈及了cas算法
    即关于CurrentHashMap上面有介绍
    然后还有hashset与hashmap关系点他进

还能记起的,都在这里了,希望对你有所帮助

百度实习生一面与二面、用友实习生一面(Java开发)相关推荐

  1. 大二小白从0开始的 Java开发自学之路——随学随总结!

    这里是大二下计科专业的菜狗一只 在电子科技大学吊着车尾 前一阵子一腔热血去钻研了两个月人工智能 深感无力 遂半道退出,打算开始自己的Java开发之路 嗯目前就是这么一个情况 不是那种老早就接触编程 接 ...

  2. 同花顺2020春招一面二面在线编程题(java开发)

    笔者目前正在参加2020春招,这里记录一下2020同花顺春招一面和二面中遇到的编程题,不包含笔试哦(其实是因为我忘了,不过笔试中的编程题还是比较简单的). 注:笔者编程过程中被要求共享屏幕. 1.1 ...

  3. java做一个mud_菜鸟学Java(十二)——搭建一个完整的Java开发环境

    作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境的配置,大概就分三个1,JDK 2,Tomcat(或者其他的)3,eclipse(或者myeclipse ...

  4. 百度首页增加了二维码扫描

    百度首页增加了二维码扫描 移动就是未来!

  5. 基于百度编辑器Ueditor的二次开发

    基于百度编辑器Ueditor的二次开发 官网下载 基本配置 简化后端配置,不请求后端配置项 后端接口规范 修改图片上传 说明及修改 新增按钮及弹窗(自定义附件上传) 按钮文案修改 在业务开发的时候,曾 ...

  6. 2021百度之星初赛二(1001 -- 1003)

    2021百度之星初赛二(1001 – 1003) 1001 题意: 给 a,b,每次 a,b会变为 a+b,a-b,问 k 次之后变成了哪两个数,对 998244353998244353 取模,多组数 ...

  7. 记京东Java开发实习生二面

    京东Java开发实习生二面已挂,心情虽然失落,但是还是要在这里做一点作结,以便日后做些参考.让每一次失败都变的有意义! 面试流程 这次面试的流程比较简洁,首先问了两道技术问题,然后面试官对于我的简历中 ...

  8. 仿百度壁纸客户端(二)——主页自定义ViewPager广告定时轮播图

    仿百度壁纸客户端(二)--主页自定义ViewPager广告定时轮播图 百度壁纸系列 仿百度壁纸客户端(一)--主框架搭建,自定义Tab + ViewPager + Fragment 仿百度壁纸客户端( ...

  9. ​​​​​​​百度统计使用教程二:了解统计指标

    系列文章目录 百度统计使用教程一 百度统计使用教程二 文章目录 系列文章目录 前言 一.流量分析 1.实时访客 2.趋势分析 二.来源分析 三.访问分析 四.转化分析 五.访客分析 六.优化分析 总结 ...

  10. 招聘 | 百度NLP部(北京)急招实习生

    [百度NLP部(北京)急招实习生] 职位描述 1. 参与大模型建设.信息抽取.内容理解等相关工作: 2. 参与负责文本和多模数据挖掘与处理等工作: 3. 探索数据价值,探索新技术. 任职要求 1.计算 ...

最新文章

  1. Enterprise Library系列文章回顾与总结
  2. 第二阶段个人总结06
  3. python 提高文件查询效率_Python 大量小文件存储提高效率的简单示例
  4. delphi7aes加密解密与java互转_Java 加密/解密Excel
  5. javaweb 常用jar包_使用javaweb写一个登录案例
  6. java 动态数据源切换,Java+Spring+MyBatis实现多数据源的动态切换
  7. python中range的用法_python的range怎么使用
  8. Dart基础第5篇:自增自减运算符、for、while、do...while循环、continue、break、多维列表循环
  9. 关于2018、2019后的 MacBook 苹果电脑增加T2安全芯片造成无法U盘启动解决办法
  10. Fultter之Element和Widget对应关系解析
  11. iperf3 网络探测详解(android、iOS、windows)
  12. Visual Studio助手VAssistx各版本破解教程
  13. matlab图像处理中的错误--调用imhist报错
  14. 26--学生签到 管理员页面功能(5) foreach
  15. BGP和BGP机房各为什么?优势在哪?
  16. 试题 算法训练 P0704
  17. TPC TiKV:Hackathon 中最硬核项目是如何炼成的?| TPC 战队访谈
  18. 应用程序未安装,已安装了存在签名冲突的同名数据包
  19. 聊一聊JAVA指针压缩的实现原理(图文并茂,让你秒懂)
  20. 深度图怎么看行情走势

热门文章

  1. Java中包装类和基本类型的区别
  2. Mac电脑打开隔空投送并传送文件的技巧
  3. 计算机中文字底纹咋操作,word文档中的如何添加文字背景? -电脑资料
  4. 《游戏编程入门》学习笔记5——关于规则的初步思考(策划)
  5. Python: 阶乘计算
  6. 【2022年无线通信和与物联网专场】东南大学尤肖虎教授-超高可靠、超低时延5G/6G移动通信基础理论研究与发展
  7. docker的端口映射顺序
  8. 技术分享 | 什么是Minitaur四足机器人?
  9. Word基础(二十)插入表格
  10. ibdata1文件过大问题