1. 什么是反射,怎么用的,为什么要用反射,哪里用到过?
        § 反射:在运行状态下,对于一个类,可以知道这个类的所有属性和方法;对于一个对象,可以调用这个对象中的所有方法和属性。这种动态获取类的信息和动态的调用对象的方法和属性的机制叫做java语言的反射机制。
        § 反射其实也就是创建对象,不过反射是在运行状态下创建的对象,是动态的。
        § IOC容器用反射去创建bean对象,注解也使用的反射机制。
    2. hashmap怎么扩容的,hash冲突怎么解决。
        § hashmap采用的是数组+链表的数据结构,因为数组是固定长度的,所以要扩容。
        § hashmap的初始容量是16,扩容因子0.75,也就是hashmap容量达到12时,就会扩容,
        16*2=32,第一次扩容后,容量变为32.
        哈希冲突:同一个key计算出的hash值可能是一样的,就会引起hash冲突。发生哈希冲突后,采用链表加红黑树存储元素,一个哈希桶中的链表大于8时,链表转为红黑树,小于6时,又转为链表。红黑树是为了解决hashmap发生hash冲突元素过多导致读写性能太差的时候才用的。
    3. 线程池的几种创建方式,有什么区别
    4. Executors创建线程池的方式可能会发生什么问题?
        § newSingleThreadExecutor:单例线程池,只有一个核心线程,核心线程满了,将任务放在队列中,队列默认是MAX_VALUE无限大,队列任务过多,会发生OOM
        § newCachedThreadPool:缓存线程池,也就是可以需要创建线程的线程池,核心线程为0,非核心线程空闲60s被回收,非核心线程默认MAX_VALUE,无穷大,如果非核心线程过多,会发生oom。
        § newFixedThreadPool:固定核心线程数的线程池,非核心线程默认最多创建一个,阻塞队列默认MAX_VALUE,队列任务过多可能会发生OOM.
        § 为什么任务过多先存在队列中,再创建核心线程?
            因为线程的频繁创建和销毁会获取全局锁,导致其他线程不可用。频繁的创建销毁线程对内存的消耗比较大。
    5. 为什么核心线程数满了,先用缓存队列再去创建新的线程
        因为线程的频繁创建和销毁会获取全局锁,导致其他线程不可用。频繁的创建销毁线程对内存的消耗比较大。
    6. springioc是怎么实现的?
        beanFactory创建的,底层采用反射+工厂模式实现的。
    7. spring的作用域,单例是线程安全的吗
        spring五大作用域:
        Singleton:容器中只创建一个bean,bean以单例的方式存在
             Prototype:每次从容器中调用bean时,都会返回一个新的实例,相当于每次都会执行一        
                次new ,每次获取的对象都不是同一个对象。
        Request:每次http请求都会创建一个bean
        Session:同一个http session共享一个bean,不同session共享不同的bean
        Globalsession:一般用于portlet应用环境
            后面三个都是用在web环境,只能用于web的ApplicationContext环境。
        单例线程是否安全:
            多线程下,如果一个单例对象带有状态,也就是说它的成员变量存储数据,就是线程不安全的,如果对象不带状态就是安全的。
    8. 强引用、弱引用、虚引用、软引用?
        ▪ 强引用:new的对象都是强引用,最多的一种引用,即使即将发生oom也不会对对象进 行回收。
        ▪ 软引用:还有用但是不必要的对象,在系统即将发生内存溢出时会回收。
        ▪ 弱引用:一个虚引用的声明周期,最多持续到下一次垃圾回收之前,是没有用的对象。
        ▪ 虚引用:最弱的引用无法根据一个虚引用来取得对象的实例,设置虚引用的目的是这个对象被回收时收到一个系统的通知
    9. threadlocal和volitile,threadlocal是什么引用?
    10. @Autowired和@Resource的区别,如何接口有多实现,@Autowired可能会发生什么问题
        @Autowired是根据类型注入的,如果一个接口有多个实现类可能会发生问题
    11. springaop切面怎么定义和实现的
        首先要有一个通知类,然后要有一些需要通知的方法,也就是切入点,在用切入点表达式来建立通知和切入点之间的关系,是一种面向切面编程的思想,采用的动态代理模式,是在不改变原始方法的基础上,对原始方法进行增强。
    12. springboot如何实现自定义的start
    13. springboot多配置文件怎么处理的
        可能会包含测试环境、开发环境、生产环境等多个环境。每个环境都包含了各自的ip和端口号,可以直接配置在一个yml文件中,采用---分割性分开。用profiles标签对配置进行起名作区分,如果使用哪个环境,就设置为active状态。也可以采用命令的方式选择使用哪个环境。
    14. redis的分布式锁
    15. 介绍一下jvm,垃圾回收机制是怎么样的?
    16. 双亲委派模型

博彦科技面试2-10相关推荐

  1. 编程面试的10大算法概念汇总

    编程面试的10大算法概念汇总 嘿,第一次翻译文章,在ProgramCreek看到的,原文章名为Top 10 Algorithms for Coding Interview, 对于我这个明年即将直奔BA ...

  2. html5程序员面试官如何提问,前端程序员第二轮面试的10个问题

    近日,w3cschool app开发者头条上分享了美团前端程序员第二轮面经,引来了不少程序员粉丝们的围观. 在分享面经之前,不妨先了解一下前端面试应该做好哪些准备呢? 0.前端面试加分 前端面试git ...

  3. 大搜车Java面试 2017.10.30

    大搜车Java面试 2017.10.30 杭州余杭区办公环境一般,两层一栋的办公楼,但是开发工位是连成一片的没有卡位一说.比较拥挤. 面试两轮技术面,总共耗时3小时,各种等待就有1小时,最后人事说三天 ...

  4. python面试常见问题-10个Python面试常问的问题

    概述 Python是个非常受欢迎的编程语言,随着近些年机器学习.云计算等技术的发展,Python的职位需求越来越高.下面我收集了10个Python面试官经常问的问题,供大家参考学习. 1.类继承 有如 ...

  5. TCP协议面试灵魂10问 | 强势整理

    点击上方"朱小厮的博客",选择"设为星标" 后台回复"加群",加入新技术 来源 | urlify.cn/rqumIn 先亮出这篇文章的思维导 ...

  6. python filestorage对象怎么转化成字符串_Python面试的10个常见问题及答案,检验你的学习成果吧!...

    导语 Python已经是现在最受欢迎的编程语言,随着这几年云计算,机器学习,人工智能等技术的发展,学习Python的人越来越多,职位的要求也越来越高,下面我收集了10个面试中经常被问到的问题和答案供大 ...

  7. 经典:编程面试的 10 大算法概念汇总

    面试算法 作为linux运维,多多少少会碰见这样那样的问题或故障,从中总结经验,查找问题,汇总并分析故障的原因,这是一个Linux运维工程师良好的习惯.每一次技术的突破,都经历着苦闷,伴随着快乐,可我 ...

  8. 找工作必备:外企面试常见10个问题。

    1.请介绍一下你自己. 这是外企常问的问题.一般人回答这个问题过于平常,只说姓名.年龄.爱好.工作经验,这些在简历上都有,其实,外企最希望知道的是求职者能否胜任工作,包括:最强的技能.最深入研究的知识 ...

  9. 程序员7天内面试了10家公司,如何从命中率0%到命中率至70%?

    背景 先交代下po主背景,女, 17年江苏二本通信工程专业毕业,求职前端开发工程师.毕业后在上海一家创业公司担任前端开发工程师. 内心独白 实事求是地写年限,心急吃不了热豆腐:实事求是告诉面试官对不起 ...

  10. 毕业季面试常见10个问题及回答技巧

    问题1:你最大的优点是什么? 你在回答这个问题的时候,需要注意三点:第一,你阐述的优点必须与应聘的职位相关,与职位无关的优点,即使很值得炫耀,也必须舍弃:第二,不要撒谎,你所阐述的优点必须是真实存在的 ...

最新文章

  1. 女生学编程有哪些好处呢?
  2. 多媒体-设备的名称已被此应用程序用作别名,请使用唯一的别名
  3. 在vs2012中用C#开发Android应用Xamarin环境搭建
  4. Chrome 提标 您的浏览器限制了第三方Cookie...解决方法
  5. 3.1.2 单一数字评估指标以及多个不同评估指标
  6. 你最近学到的 飞鸽传书 东西的题目
  7. 【codevs1068】乌龟棋noip10年TG----第二个A掉的钻石题
  8. bigru参数计算_[数据挖掘]华中科技大学 李黎 周达明:基于CNN-BiGRU模型的操作票自动化校验方法...
  9. 轻量应用服务器支持带宽套餐升级至流量包套餐流程说明
  10. 写一个Windows上的守护进程(7)捕获异常并生成dump
  11. python笔记-动态类型
  12. Linux常用的查找命令总结
  13. 利用Bat命令批量修改文件名
  14. 固高运动控制卡跟随运动(Follow 运动模式)
  15. 【知识图谱】08KBQA问答系统(python+fuseki+jena)
  16. QCC3040---peer UI module
  17. Logitech G系鼠标脚本编程,实现鼠标自动定位控制
  18. 扫地机器人作文说明文提纲_关于物品的说明文:扫地机器人的自述
  19. c语言编程实践题,C语言实践编程题
  20. ubuntu训练深度学习模型电脑重启解决方法

热门文章

  1. java爬取智联招聘职位信息
  2. 7个好用的运维监控工具,你在用哪个?
  3. unity实战:狂暴机器人游戏教程(下篇)
  4. 原 Java常用数据结构及特点
  5. 区块链赋能供应链,不让中间商赚差价!
  6. 高等代数:5 矩阵的相抵与相似
  7. OceanBase 3.1.2版本测试报告
  8. Qt 事件机制源码分析 QApplication exec 源码分析 多图超级详细
  9. 计算机网络原理选择题
  10. Tomcat 执行一段时间之后服务突然关闭,生成hs_err_pid**.log文件处理方案