先和Hr谈好,HR约的面试官,面试官人挺好的,先做一个自我介绍、面试官看简历上的信息来询问一些问题,多为基础类的问题,后面谈了一些平时的兴趣、学习方式之类的
面试官问的面试题:信雅达Java后端开发面试题
1. 集合:
arrayList、hashMap、hashSet底层原理
答:ArrayList: 基于动态数组,连续内存存储,适合下标访问(随机访问)
LinkedList:基于链表实现,更适合添加,删除
hashMap:1.7 1.8区别 扩容 以及 put set
HashSet:基于哈希表实现,支持快速查找,但不支持有序性操作。
并且失去了元素的插入顺序信息,也就是说使用Iterator 遍历 HashSet 得到的结果是不确定的。
2.Stringbuffer、Stringbuilder、String区别
答:String:用于字符串操作,属于不可变类;【补充:String 不是基本数据类型,是引?类型,底层? char 数组实现的】
StringBuilder:与 StringBuffer 类似,都是字符串缓冲区,但线程不安全;
StringBuffer:用于字符串操作,属于可变类,对方法加了同步锁,线程安全(并不是所有方法)
执行效率:StringBuilder > StringBuffer > String
3.SpringBoot启动原理
答:SpringBoot启动整体可分为两步:
1.初始化一个SpringApplication对象 (@SpringBootApplication =》SpringBootConfiguration 、 @EnableAutoConfiguration 、@ComponentScan)
2.执行该对象的run()方法
4.实现线程池的几种方式和应用场景
答:1.通过 ThreadPoolExecutor 的构造方法实现:
2.通过 Executor 框架的工具类 Executors 来实现:
可以创建三种类型的 ThreadPoolExecutor: 1、 FixedThreadPool:该方法返回一个固定线程数量的线程池。
2、 SingleThreadExecutor:方法法返回一个只有一个线程的线程池。
3、 CachedThreadPool:该方法返回一个可根据实际情况调整线程数量的线程池。
5.SpringAop 基本原理
答:面向切面编程。
通过动态代理实现:一、基于JDK的动态代理;(如果目标对象的实现类实现了接口,)
二、基于cglib动态代理。(如果目标对象的实现类没有实现接口,,)
6.结合实际项目谈谈自己的sql优化
答:优化成本:硬件>系统配置>数据库表结构>SQL及索引。
优化效果:硬件<系统配置<数据库表结构
索引失效的情况:
1. 逻辑失效
1. 少用select *,需要什么字段返回什么字段. (遇到过)
2. 发生索引列的类型转换. (遇到过)
3. 对索引列进行了各种运算(遇到过)
2. 物理失效
1. long列调整导致索引失效(Oracle似乎会自动感知)
2. move操作导致索引失效
3. 分区表导致索引失效
所有的全局索引,只要用到update global indexes,都不会失效,其中add分区甚至不需要增加 update global indexes都可以生效.
局部索引的操作都不会失效,除了split分区。split分区时,要将局部索引进行rebuild.
7.看了下简历简单的问了问项目用的什么技术,遇到了什么难题
8.他看我简历上写了jvm,问了些jvm的东西,类加载机制,双亲委派机制
java基础、多线程、进程、Redis
通过boss直聘获得的面试机会
先过了笔试,然后才有的面试机会
面试时HR迟到,等了差不多半个小时才开始
问了一些问题后就结束了,感觉很懵
这次的面试感觉很一般,没有什么特别的感觉
信雅达java开发实习生面试题
一开始让自我介绍,然后问到简历里的项目,以及怎么实现的,用到什么技术,问到Java方面的知识,问到数据库方面的知识
先进行笔试,时间大概半小时左右,会进行批改,分数低的会被pass,然后进行1对1技术面试,主要考察你的项目和java基础是否扎实,以及框架了解多少,面试官会进行打分,前面的都过了的进行人事面试,主要考察你的表达能力以及随机应变能力,最后等通知大概2-3天
面试官问的面试题:信雅达JAVA开发工程师面试题
你做的这个项目介绍一下?
String类可以不可以被继承?
list和set的区别简单介绍一下啊?
hashmap和hashtable的区别?
如果会SSM框架,spring的IOC和AOP是重点,mybatis也会问
2019-07-11 | 网上申请
2017-12-23 | 校园招聘
2013-10-25 | 校园招聘
最后更新时间:2019-07-11