东软FY25专业力考试-Java考试大纲

一、基本要求

  1. 掌握编程思维,能够运用逻辑思维和抽象思维,构建数据结构和算法实现业务需求。

  2. 掌握Java基础语法:基本数据类型、变量、常量、运算符、泛型、控制语句(条件、循环)、方法(定义、调用、重载)。

  3. 掌握Java面向对象编程:包、作用域与访问控制、类、对象、实例化、继承、封装、多态、抽象类和接口、静态变量和静态方法、内部类和匿名类。

  4. 掌握Java异常处理:异常类和异常处理机制、try-catch-finally语法、throw与throws、自定义异常。

  5. 掌握Java数组与集合类型的使用方法:数组的定义和初始化、多维数组、List-Set-Map接口与实现类(ArrayList、HashMap、HashSet、Vector)。

  6. 掌握注解:注解定义和使用、元注解。

  7. 掌握Java数据库编程和I/O编程:JDBC基础(Connection、Statement、ResultSet)、流的概念、文件读写、字节流和字符流、缓存流。

  8. 掌握Java多线程编程:线程的生命周期、创建和启动线程、线程同步、线程池。

  9. 掌握Java反射机制:Class 类型、动态创建对象、反射访问属性和方法。

  10. 掌握Lambda 表达式:函数式接口、Lambda 表达式和方法引用、Stream API。

  11. 掌握Java Web 开发基础:理解Servlet/JSP工作原理、MVC模式、MVVM模式、Spring框架基础知识。

  12. 掌握自动化单元测试工具与方法:熟悉Junit、DBUnit。

二、考试内容

  1. 编程思维和算法构建

  • 能够综合运用Java语言各种特性,编写程序实现业务要求

  • 能够通过阅读现有代码,分析理解调用关系和处理过程,进而形成有效的修改方案

  • 掌握对代码进行重构和优化的常见方法:抽出方法、复杂判断优化、定义共通处理、抽象基类

  • 掌握SOLID原则

  • 掌握常见设计模式:工厂模式、单例模式、装饰器模式、模板方法模式、适配器模式

  1. Java基础语法

    1. 掌握java数据类型的分类。

    2. 掌握基本数据类型的种类

    3. 掌握Java基本类型变量的定义和使用。

    4. 掌握java整数类型分类、长度、字节大小和表示范围

    5. 掌握java浮点数类型遵从标准的浮点规则

    6. 掌握java基本数据类型转换

    7. 掌握布尔类型的转换

    8. 掌握java变量的声明。

    9. 掌握java变量的作用域

    10. 掌握java中定义常量的关键字

    11. 掌握java中基本的运算符使用

    12. 掌握java中运算符的优先级

    13. 掌握跳转语句

    14. 掌握方法定义内容

    15. 掌握方法调用方式

    16. 掌握调用方法时传参类型

    17. 掌握构造方法的特点

    18. 掌握重载的定义和使用场景

    19. 掌握重载和重写的区别

  2. Java面向对象编程

    1. 掌握什么是Java包,如何声明和使用包,以及它们在代码组织中的作用

    2. 掌握访问修饰符(public、private、protected和默认)的作用和区别,以及它们在不同作用域中的使用

    3. 掌握什么是类和对象,如何定义类和创建对象

    4. 熟悉实例化对象的过程,如何使用构造方法来初始化对象

    5. 掌握继承,如何使用Extends着急字来实现继承以及如何处理Java中的单继承

    6. 掌握封装,如何使用访问修饰符实现封装,以及它在java中的重要性和优势

    7. 掌握多态性的概念,包括编译时多态和运行时多态,以及如何实现方法重写和方法重载

    8. 掌握抽像类,如何声明和使用抽像类,抽像类和普通类之间有哪些区别

    9. 掌握接口,理解接口的概念和作用,以及如何声明、实现和使用接口

    10. 掌握静态变量和静态方法,如何声明和使用它们,与实例变量、实例方法有何区别

    11. 理解静态声明和静态导入的概念,以及它们的用法

    12. 掌握内部类概念,包括静态内部类、非静态内部类、局部内部类和匿名内部类,以及如何创建和使用它们

    13. 掌握如何实现单继承和多重继承

    14. 掌握方法的final修饰符和作用与使用场景

    15. 掌握Super关键字调用父类的构造方法与方法的用法和注意事项

    16. 理解动态绑定(动态多态性)的概念,包括什么时候发生动态绑定和它的优势

    17. 掌握如何使用Final关键字来定义常量、阻止方法被重写和类被继承

    18. 掌握接口与抽像类之间的差异,以及在什么情况下使用它们更适合

    19. 掌握构造方法的作用和特点,以及默认构造方法的使用

    20. 掌握对象之间的关系,包括关联、聚合和组合

    21. 掌握重截构造方法,如何在一个类中实现多个构造方法

    22. 掌握类加载器和类加载机制在Java中的作用

    23. 掌握泛型的概念和作用,掌握泛型类、泛型接口和泛型方法

    24. 掌握使用枚举类型来定义常量和限制变量的取值范围

    25. 掌握序列化和反序列化的概念,以及如何在Java中实现对象的序列化

    26. 掌握反射,如何在java中使用反射机制获取类的信息和调用类的方法

    27. 掌握Record的语法特性和使用方法

  3. Java异常处理

    1. 掌握日常工作或学习过程中常见的异常,理解异常原因

    2. 掌握运行时异常RuntimeException和非运行时异常的概念和区别

    3. 理解Checked Exceptions 和 Unchecked Exceptions的概念和区别

    4. 掌握异常栈信息的分析,判断根异常(… Caused by …)

    5. 掌握try ... catch ... finally ... return各语句块,理解其执行顺序

    6. 掌握多个catch语句的匹配顺序(继承关系顺序)

    7. 掌握finally语句作用和用途

    8. 掌握try-with-resource语法,以及各语句块执行顺序

    9. 理解Throwable、Error、Exception的概念和区别(异常继承关系)

    10. 理解OutOfMemoryError,能够说明该异常发生的可能原因和相应的处理措施

    11. 理解StackOverflowError,能够说明该异常发生的可能原因和相应的处理措施

    12. 理解NoSuchMethodError、NoSuchMethodException区别,能够说明该异常发生的可能原因和相应的处理措施

    13. 理解NoSuchFieldError、NoSuchFieldException区别,能够说明该异常发生的可能原因和相应的处理措施

    14. 理解NoClassDefFoundError,能够说明该异常发生的可能原因和相应的处理措施

    15. 理解ClassNotFoundException,能够分析异常发生的可能原因和相应的处理措施

    16. 掌握ArrayIndexOutOfBoundsException异常原因和解决方法

    17. 掌握ConcurrentModificationException异常原因和解决方法

    18. 掌握NullPointerException异常发生的原因、如何排查、避免措施

    19. 掌握NumberFormatException异常原因和解决方法

    20. 掌握FileNotFoundException异常原因和解决方法

    21. 能够对SocketException、ConnectException网络编程中常见异常进行分析

    22. 能够对ConnectTimeoutException、ReadTimeoutException网络编程中常见异常进行分析

    23. 掌握断言关键字assert用法、优点、注意事项

    24. 掌握自定义异常,编写静态工具类,实现对象非空校验(Object、数组、集合)

  4. Java数组与集合类型

    1. 掌握数组的特点

    2. 掌握数组的遍历和排序算法

    3. 掌握数组的动态扩容、插入、删除

    4. 结合代码片段,理解数组的引用

    5. 掌握数组和集合的区别

    6. 掌握Map、Collection、List、Set、Queue、Stack体系结构

    7. 掌握Set和List的区别

    8. 掌握ArrayList、HashMap、HashSet、Vector概述和区别

    9. 掌握ArrayList的遍历和删除

    10. 掌握ArrayList和ArrayIndexOutOfBoundsException

    11. 掌握ArrayList的排序

    12. 掌握ArrayList和数组之间转换

    13. 结合stream流,掌握对ArrayList的数据做排序、聚合、分组、去重、取值

    14. 理解Properties的用途

    15. 掌握HashMap和HashTable的区别

    16. 掌握HashMap的常用方法和讲解

    17. 理解HashMap底层实现原理

    18. 掌握HashMap的遍历方法

    19. 理解HashMap如何处理hash冲突

    20. 理解HashMap容量扩展原理

    21. 掌握ConcurrentHashMap原理、常见用途、注意事项

    22. 掌握Collections、Arrays工具类常用方法

  5. Java注解

    1. 理解注解(Annotation)概念和作用

    2. 掌握元注解(@Target、@Retention、@Repeatable、@Inherited、@Report、@Documented)

    3. 掌握Java内置常见注解的参数、用途、应用场景,包括:@Override、@Deprecated、@SuppressWarnings等。

    4. 掌握自定义注解,包括注解声明和元素定义。

    5. 掌握注解在AOP中的应用,比如配置切面日志。

  6. Java数据库编程和I/O编程

    1. 理解JDBC概述和作用

    2. 掌握Connection接口及其方法

    3. 掌握Statement接口及其方法

    4. 掌握PreparedStatement接口及其方法

    5. 掌握如何执行SQL查询和更新操作

    6. 掌握ResultSet接口及其方法

    7. 掌握批处理和事务管理

    8. 掌握异常处理和资源关闭

    9. 理解BLOB和CLOB数据类型

    10. 理解连接池作用

    11. 理解流的概念和作用

    12. 理解字节流和字符流的区别

    13. 理解输入流和输出流的概念

    14. 掌握文件读写的基本操作

    15. 掌握字节流的常用类和方法

    16. 掌握字符流的常用类和方法

    17. 理解缓存流的作用和原理

    18. 掌握缓存流的常用类和方法

    19. 理解字符编码和字符集的概念

    20. 掌握字符串和字节数组的转换

    21. 掌握文件处理异常的处理方式

    22. 掌握流处理异常的处理方式

  7. Java多线程编程

    1. 创建线程:掌握如何创建线程,掌握创建线程的各种方式。

    2. 启动线程:掌握如何启动线程,理解使用start()和run()方法有何区别。

    3. 线程同步:掌握什么是线程同步,理解为什么要进行线程同步。

    4. synchronized关键字:掌握如何使用synchronized关键字实现线程同步,掌握其使用方式。

    5. 锁对象:掌握什么是锁对象,掌握如何使用锁对象进行线程同步。

    6. volatile关键字:理解volatile关键字的作用,理解什么时候使用volatile关键字。

    7. 线程安全:理解什么是线程安全,掌握如何保证线程安全。

    8. 线程池概述:理解什么是线程池,掌握为什么要使用线程池。

    9. 线程池的优势:能够列举使用线程池的优势和好处。

    10. Executor框架:理解什么是Executor框架,掌握它的主要组件。

    11. 线程池的创建:掌握如何创建线程池,掌握常见的线程池实现类。

    12. Callable和Future:理解什么是Callable和Future,掌握如何使用它们获取线程执行结果。

    13. 线程池的关闭:掌握如何正确关闭线程池,以及有哪些关闭方式。

    14. 并发集合:理解Java中常用的并发集合类及其使用场景。

    15. 同步器:理解CountDownLatch和CyclicBarrier。

  8. Java反射机制

    1. 反射机制概述:理解什么是Java反射机制,以及为什么要使用反射。

    2. Class类:理解描述Class类的作用和常用方法。

    3. 获取Class对象:理解获取Class对象的三种方式。

    4. 动态创建对象:掌握如何使用反射动态创建对象。

    5. 反射访问属性:掌握如何使用反射访问对象的属性。

    6. 反射访问方法:掌握如何使用反射调用对象的方法。

    7. 获取构造方法:掌握如何使用反射获取对象的构造方法。

    8. 获取字段信息:掌握如何使用反射获取对象的字段信息。

    9. 修改字段值:掌握如何使用反射修改对象的字段值。

    10. 反射应用:理解反射在实际开发中的典型应用场景。

  9. Lambda 表达式

    1. 理解Lambda 表达式的语法和结构

    2. 掌握Lambda 表达式的使用场景和好处

    3. 熟练编写简单的Lambda 表达式

    4. 理解函数式接口的定义和特点

    5. 掌握使用@FunctionalInterface注解声明函数式接口

    6. 掌握常见的函数式接口,如Consumer、Predicate、Function等

    7. 熟悉函数式接口在Lambda 表达式中的应用

    8. 理解Lambda 表达式和方法引用的关系

    9. 能够比较Lambda 表达式和匿名内部类的异同

    10. 理解方法引用的概念和用法

    11. 掌握四种方法引用的类型:静态方法引用、实例方法引用、类方法引用、构造方法引用

    12. 掌握使用Lambda 表达式和方法引用简化代码

    13. 了解Stream API的作用和优势

    14. 理解如何创建Stream 对象

    15. 掌握Stream API中常用的中间操作和终端操作

    16. 熟悉Stream API在集合数据处理中的应用场景

  10. Java Web 开发基础

    1. 理解Servlet的生命周期和工作原理

    2. 理解Servlet的请求和响应处理机制

    3. 理解JSP和Servlet的关系

    4. 了解MVC模式的基本思想

    5. 理解MVC模式的三个核心组件以及他们的关系:模型、视图和控制器

    6. 掌握如何将业务逻辑、数据和界面分离,实现代码的可维护性和可扩展性

    7. 理解MVVM模式在前端开发中的作用和优势

    8. 掌握ViewModel的概念和作用,VewMode如何实现业务逻辑与视图逻辑分离

    9. 熟悉数据绑定、事件处理等MVVM模式的关键特性

    10. 了解Spring框架的起源和发展

    11. 理解Spring的核心概念和作用:IOC、AOP

    12. 理解SpringBoot和Spring的关系

  11. 自动化单元测试

    1. 掌握JUnit注解:@Test、@Before, @After等

    2. 理解DBUnit工作原理

    3. 掌握JUnit中如何使用断言

    4. 掌握Mocking,Stubbing

三、题型设置

题型

比例(分数)

数量

分值

选择题(单选)

60%

20

每题3分

编程题

40%

4

每题10分

四、难度定义

难度

比例(分数)

20%

60%

20%

五、通过标准

职级

通过分数

02级初级软件工程师

30

03级软件工程师

39

04级高级软件工程师

48

六、参考资料

  1. 《Java语言程序设计》(基础篇 原书第10版)机械工业出版社 作者:Y.Daniel Liang

  2. 《Java核心技术·卷I》(原书第12版)机械工业出版社 作者:Cay S.Horstmann

  3. 《On Java 中文版 基础卷》人民邮电出版社 作者:Bruce Eckel

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值