阿里云一面凉经
项目1
- 建议讲项目的时候先铺垫一下背景
- 拦截器
自动化mock是假装往db里加
spring gunit 单元测试
项目2
- ThreadLocal 怎么实现线程隔离的
- ThreadLocal最后释放了么
编程知识
- 罗列一下Java基本数据类型有哪些
- 表达字符串用什么类型
- 为什么说String是不可变的?
- 那一个 string 对象它被实例化出来之后会存在 GVM 内存的哪个区域呢?
- 除了这个地方它还会在哪?它只会存在字符串常量池吗?
- 你 new 一个,表示你直接 new 一个 string a 等于ABC,字符串 A b c 和 string a 等于 new string a,b, c 这两种有区别吗。
- 字符串截取一般用什么方法?
- substring 把一个字符串截取掉之后,那么它跟这个字符串类型是不可变的。这个概念有冲突吗?
- final 关键词可以修饰哪些东西?在 Java 里面。
- final有什么用啊?就发生修饰之后。
- 你罗列一下常见的数据结构有哪些?
- B+树有什么实践
- 为什么用 b+树而不是 b树?
- 为什么要,为什么要用层数更少的树?
- 栈这种数据结构有什么实践。
- 那你再说说那个 Java 里面常见的一些集合有哪些。
- 如果想存储一系列不重复的元素,应该用什么集合。
- hashset 能保证插入顺序吗。
- hashset是怎么做到去重的。
- 2个对象去算hashcode的时候,有没有可能算出来是一样的?
- hashcode重复了怎么办呢?
- hashmap 的 key 能重复吗?
- hashmap怎么做到key 不能重复的?(用哈希code)
- 你来举例说明一下,就是通过 Java 里面的一些语法的规定,或者说一些特点,举例说明哪些一些语法或者它的特点是能体现 Java 面向对象三大特性的?
- 一个类只能继承一个抽象类,不能继承多个抽象类,对吗?明白,是吧嗯?是,是这个意思,是这个意思,然后一但是一个类可以实现多个接口
- 假设你定义了一个抽象类,然后你拿这个抽象类去实现一个结构,然后问抽象类是否需要实现接口定义的所有方法才能通过编译。
- 不用,因为你是抽象类,如果你是一个普通类的话是需要的哦。抽象类能实例化吗?
- 说一下什么是实例化吧。
- 你能new一个抽象类么
- 假设你的类里面有一个字段有一个变量被 protected 修饰,那么这个类的子类,但是这个子类跟这个类不在同一个包下,就是不在同一个包下的这个类的子类能不能直接访问这个 protect 的变量?
- protected 的规则是啥?
- 那你说重载和重写有啥区别?
- 如果在类当中的一个变量加一个 static 修饰符会有什么作用?
- 哪是静态类型
- 为什么你要加static?什么情况下要加 static 类型?
- 加了 static 修饰的变量和不加 static 修饰的变量,它在 JVM 的区域的划分上有区别吗。
- 我判断一下你到底知不知道 static 是干啥的?假设我定义一个类,然后里面类里面我定义一个成员变量,整形成员变量,然后我给这个整形成员变量增加一个static,一个修饰,并且初始化为0,这个前提条件,这个明白,然后我用这个类实例画出了两个对象,我分别用这两个对象去访问这个静态变量,并且执行加加操作啊。然后这一步完了之后,最后我通过这个类去访问这个静态变量,去打印它的值是多少。
- 在类当中必须要显示定义一个构造方法吗?
- 一般我们从垃圾回收的角度再分析的话,一个堆它还会进一步划分成哪个哪几个区域。
- 如果一个对象它在分配内存的时候,它会先被分配在哪个区域?
- 如果新生代的剩余空间不够这个内存的不够这个对象的大小了,会怎么办?
- 转移出去这个过程叫做啥?(垃圾回收)
- 你是数据库里面事务怎么理解的?
- 不要讲了acid,举个例子什么时候应用事务。
- 什么什么情况下可以不用加事务?
- 你之前项目中 my badcase 的那些同步全都加事务了吗?
- 加了 事务什么代价?
- select 语句在 Innodb 引擎当中执行 select 语句需要会加锁吗?
- 假设有一张表存了全国人民所有人的信息,你觉得性别这一列加索引好,还是出生年月这一列加索引好?
代码题
快乐数(白板)


阿里云一面面经重基础
浙公网安备 33010602011771号