欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  头条

8个Java高级开发工程师的面试考纲

程序员文章站 2022-03-16 14:29:50
...
市面上,有很多Java的学习图书,大部分图书的内容都在讲解着Java最为基础的部分,有些稍微不正规的书中,可能还会存在些许错误的内容,而且网上也有千奇百怪的Java面试题,很多也是着重在Java基础上。实际上应聘Java高级开发工程师的话,这些基础知识的存货是远远不够的,除此之外,必须懂得算法,数据结构,操作系统等知识。由于内容涉及较多,所以不讲解具体的技术,而是从企业招聘Java高级开发工程师的面试题进行了整理,希望对大家有帮助。

8个Java高级开发工程师的面试考纲

一、Java基础

1、面向对象

掌握面向对象的核心思想并深度理解

掌握并理解封装继承多态相关技术

2、I/O

掌握字节流FileInputStream,FileOutputStream和字符流FileWriter,OutputStreamWriter并熟练运用

掌握File类型的构造,获取和创建删除

3、多线程

掌握Thread类型

掌握多线程的程序运行原理及并发并行

4、异常

掌握异常的工作原理并且掌握异常的处理方式

二、Java虚拟机

1、JVM内存区域划分

掌握JVM内存参数设置及调优

掌握程序计数器、堆、虚拟机栈、本地方法栈、方法区(Java8已移除)、元空间(Java8新增)的作用及基本原理

2、类加载

掌握类的加载阶段:加载、链接(验证、准备、解析)初始化、使用、卸载。

掌握类加载器分类及其应用程序类加载器、自定义加载器。

三、J2EE

掌握Servlet内置对象、动作及相关特点和工作原理

掌握Spring框架的IOC和AOP实现原理(反射和动态代理)

至少掌握一个MVC框架(Spring MVC)的工作原理,并熟练运用。

四、数据结构和算法

掌握线性表和树的特点并熟练运用

掌握常用的排序和查找算法:插入排序(希尔排序)、选择排序(堆排序)、交换排序(冒泡排序)顺序查找、二分查找、哈希查找

熟练运用排序和查找思想解决编程问题

五、数据库

掌握SQL语句的编写

掌握数据库的优化(SQL层面和表设计层面)

至少掌握一款数据库产品

熟悉高并发、大数据情况下的数据库开发。

六、Web技术

掌握AJAX的工作原理。

至少熟悉一款JS框架(比如JQuery)

七、Linux

熟练运用Linux常见命令

熟悉Linux操作系统基本概念及特点

八、正则表达式

掌握常见正则表达式