记2020-10 面试知识点总结 应届生

it2026-01-10  7

面经

面经基础(仅针对应届)面试注重技能java基础初级部分高级部分 数据库设计模式框架GC常见的linux指令

面经基础(仅针对应届)

仅把自己最近的面试亲历为主,做以记录,用作后续复习之用,也仅可只供他人参考。还请大家以自身实际院校水平,个人能力,应聘公司规模做具体调整。 本文偏重基础,指导大体方向,在细节上不会过多赘述。拔高的 jvm 缓存 cloud redis 分布式 集群 负载均衡 等技术待n年后再总结。

面试注重技能

在面试过程中遇到最多的问题:

java基础;数据库 ;设计模式;框架 ;linux指令

个人参加面试使用的项目 : 在线书城. 仍有部分不够完善,只可参考。

java基础

初级部分

八大类型java三大特性

封装 继承 多态

对面向对象的理解

个人认为面向对象核心是 封装。提到代码复用性

对多态的理解

建议参考c++中的虚函数 碰到笔试手写虚函数实现多态的

String 常用的方法String StringBudiler StringBuffer 区别

String 拼接字符串会浪费资源, StringBudiler StringBuffer 大体实现方法相似,节约内存资源。最大区别:Budiler实现方法是有同步锁的,Buffer没

java跳出多层循环

return 返回 跳出循环 定义loop1: break loop1;跳转到指定的循环层次

高级部分

集合

List

Set List Set 区别:

随机存取,元素重复性

ArrayList linklist 区别:

底层实现,内存结构。

Map List 和 Map 区别 HashMap 底层源码的一些问题

在理解集合时建议深入源码。

io流 流的分类:

字符流 字节流

反射机制 反射的好处

可参结合ioc思想进行解答

获取类对象的方法

Class.forName(Xxx) Class cls = Xxx.class; Class cls = xxx.getClass();

多线程 如何写一个线程类:

`继承Theard 类 实现Runnable() 接口

启动线程的方法:

theard.start( )

线程实现同步方法。

数据库

mysql oracle

基础增删改查语句

脏读,不可重复读,幻读

查询时间函数

查询同名的人(不清楚那个名字重复)

使用 group by name 粗略实现

事务

了解一下事务特性及机制

动态sql

用的是 mybatis 标签 where if 等。 #{ } 实现预编译,防止sql注入。

分页

四大隔离级别

读未提交 读已提交 – 多数数据库默认 可重复读 – mysql默认级别 串行化

设计模式

单例懒汉饿汉模式 工厂模式 动态代理 … 这些简单的基础设计模式建议熟悉。

框架

常用的 ssm = spring+ spring mvc + mybatis; spring boot

pom文件作用spring 和spring boot 区别

spring boot 是对spring框架的精简和集成。精简配置文件,集成各种约定。

ioc aop 思想spring好处mybatis框架本质是jdbc工具

GC

守护(精灵)线程。 我们可以调用System.gc()方法建议gc过来清理垃圾,但绝不是指示gc过来清理垃圾。gc会判断当前垃圾量,不达到gc的阈值,gc不会清除。故,调用方法,不等于gc一定会干活。

了解 强引用,弱引用。

常见的垃圾清理方法

标记清除 复制 标记整理

常见的linux指令

这里了解常用指令,会是一个加分点。建议熟悉 :

ll ls vi cd cp rm cat tail su sudo man pwd touch mkdir ps top kill 等

最新回复(0)