1.java基础

1.1 Collection和Map
     (1)掌握Collection和Map的继承体系
     (2)掌握ArrayList,LinkedList,Vector,Stack,PriorityQueue,HashSet,
            LinkedHashSet,TreeSet,HashMap,LinkedHashMap,TreeMap,WeakHashMap,
            EnumMap,TreeMap,HashTable的特点和实现原理。
     (3)掌握CopyOnWriteArrayList,CopyOnWriteArraySet,ConcurrentHashMap的实现原理和适用场景。
   
   1.2 IO
     (1)掌握InputStream,OutputStream,Reader,Writer的继承体系。
     (2)掌握字节流(FileInputStream,DataInputStream,BufferInputStream,FileOutputStream,DataOutputStream,
                  BufferOutputStream)和字符流(BufferReader,InputStreamReader,FileReader,BufferedWriter,
                  OutputStreamWriter,PrintWriter,FileWriter),并熟练运用。
     (3)掌握NIO实现原理及使用方法。

1.3 异常
     (1)掌握Throwable继承体系。
     (2)掌握异常工作原理。
     (3)了解常见受检异常,非受检异常和错误。

1.4 多线程
     (1)掌握Executors可以创建的三种(java8增加了一种,共四种)线程池的特点及适用范围。
     (2)掌握多线程同步机制,并熟练运用。

1.5 Socket
     (1)掌握Socket通信原理。
     (2)熟练使用多线程结合Socket进行编程。

2.java虚拟机

2.1 JVM内存区域划分
     (1)掌握程序计数器、堆、虚拟机栈、本地方法栈、方法区(java8已移除)、元空间(java8新增)的作用及基本原理。
     (2)掌握堆的划分:新生代(Eden、Surviror1、Survivor2)和老年代的作用及工作原理。
     (3)掌握JVM内存参数设置及调优。

2.2 类加载
     (1)掌握类的加载阶段:加载、链接(验证、准备、解析)、初始化、使用、卸载。
     (2)掌握类加载器分类及其应用:启动类加载器、扩展类加载器、应用程序类加载器、自定义加载器。

3.J2EE
   (1)掌握JSP内置对象、动作及相关特点和工作原理。
   (2)掌握Spring框架的IOC和AOP实现原理(反射和动态代理)。
   (3)掌握Servlet的特点和工作原理。
   (4)至少掌握一个MVC框架(Spring MVC,Struts等)的工作原理,并熟练运用。
   (5)至少掌握一个ORM框架(Hibernate,MyBatis)的工作原理,并熟练运用。

4.数据结构与算法
   (1)掌握线性表和树的特点并熟练运用。
   (2)掌握常用的排序和查找算法:插入排序(直接插入排序,希尔排序)、选择排序(直接选择排序、堆排序)、交换排序(冒泡排序、快速排序)
                                、归并排序、顺序查找、二分查找、哈希查找。
   (3)熟练运用常见的排序和查找算法思想解决编程问题。
   (4)了解几大基本算法:贪心算法、分治策略、动态规划。

5.计算机网络
   (1)掌握网络的分层结构,及每层的功能特点。
   (2)掌握TCP/IP的通信原理(三次握手、四次挥手)。

6.数据库
   (1)掌握复杂的SQL语句的编写。
   (2)掌握数据库的优化(SQL层面和表设计层面)。
   (3)至少掌握一款数据库产品。
   (4)熟悉高并发、大数据情况下的数据库的开发。

7.web技术
   (1)掌握AJAX的工作原理。
   (2)至少掌握一款JS框架(比如JQuery)。

8.设计模式
   (1)熟悉常见的设计模式。
   (2)会将设计模式理论应用到实际开发中。

9.Linux
   (1)熟练运用Linux常见命令。
   (2)熟悉Linux操作系统基本概念及特点。
   (3)熟悉Shell脚本。

10.操作系统
   (1)掌握操作系统的进程管理。
   (2)了解操作系统的I/O。

11.正则表达式
   (1)掌握常见正则表达式符号。
   (2)熟练运用正则表达式解决实际问题(比如匹配电话号码、邮箱、域名等)。

Java 学习大纲的更多相关文章

  1. Java学习大纲-0412更新

    非科班报培训班学习Java,从博客园,知乎,CNDS上搜了一圈,暂时按以下计划执行,有问题随时更新--0412 1.培训班的课程按时按点学习完成(毕竟掏钱在学的是不,不好好听亏不亏...) keys: ...

  2. JAVA学习大纲

    1.第一节 JAVA概念与JDK的安装 (1)JDK的安装和环境变量的设置: (2)相关基本概念:JDK.SDK.JRE.JVM.J2SE.J2EE.J2ME.java API.JAVA语言特点: ( ...

  3. 《Java开发学习大纲文档》V7.0

    <Java开发学习大纲文档>V7.0简介: 本文档是根据企业开发所需要掌握的知识点大纲进行总结汇编,是Java开发工程师必备知识体系,系统化学习针对性非常强,逻辑分析能力非常清晰;技术方面 ...

  4. 《Java开发学习大纲文档》V6.0(已经不公布了,请查看第七版)

    <Java开发大纲学习文档第六版>简介: 有需要的私聊作者QQ:253173641.

  5. Java并发编程(一)学习大纲

    (一)学习大纲 (二)线程与并发编程的概念 (三)线程安全.原子操作.复合操作.竞态条件.加锁机制(内置锁.重入) (四)对象的共享:可见性.失效数据.非原子的64位操作,加锁与可见性,volatil ...

  6. Java学习知识体系大纲梳理

    感悟 很奇怪,我怎么会想着写这么一篇博客——Java语言的学习体系,这不是大学就已经学过的课程嘛.博主系计算机科班毕业,大学的时候没少捧着Java教程来学习,不管是为了学习编程还是为了期末考个高分,都 ...

  7. (转)2019年给Java编程初学者的建议(附学习大纲)

    本文链接:https://blog.csdn.net/javajlb/article/details/85920904 1. 引言这是一篇初学者干货,请耐心看完,希望对你有帮助 作为初学者的你,命中了 ...

  8. 【有钱的大佬看过来】Java开发学习大纲

    Java开发学习大纲文档V7.0 有钱的大佬可以买下这个版权,全网最完整最详细了,没钱的大佬可以按照自己的方式去整理.有需要的私聊作者QQ:253173641 来源于-幸福的沉淀:https://ww ...

  9. 《Java开发学习大纲文档》V8.0

    <Java开发学习大纲文档>V8.0 第八版是以实战作为核心,同时也包含前面所有版本的精华部分,第八版加入的部分有云开发(阿里云OSS存储.(github)gitlab+docker网站自 ...

随机推荐

  1. 关于ping github.com超时的解决办法

    今天在使用git的时候执行将本地分支推送到远程分支的push操作时(同时为远程库创建和本地分支同名的分支),遇到了超时的错误,经过查询全网各位大牛的操作这里给出有效解决方式 进入C:\Windows\ ...

  2. PAT甲级1015题解——令人迷茫的翻译

    题目分析: 本题计算过程简单,但翻译令我迷茫:题意读清楚很重要(反正我是懵逼了)对于一个10进制的数,如果它是一个素数,把它转换成d进制,再将这个序列逆序排,这个逆序的d进制数的10进制表示如果也是素 ...

  3. spring MVC核心思想

    目录  一.前言二.spring mvc 核心类与接口三.spring mvc 核心流程图 四.spring mvc DispatcherServlet说明 五.spring mvc 父子上下文的说明 ...

  4. 如何为MacOS X终端设置代理

    http://codelife.me/blog/2012/09/02/how-to-set-proxy-for-terminal/ 本文介绍如何在MacOS X终端里使用代理访问网络,虽然只在Moun ...

  5. React Virtual DOM Explained in Simple English

    If you are using React or learning React, you must have heard of the term “Virtual DOM”. Now what is ...

  6. MongonDB

    目录 1.下载MongoDB 2.启动MongoDB 3.添加环境变量,添加启动服务 1.下载MongoDB MongoDB的官网 简单下载方法 win32/mongodb-win32-x86_64- ...

  7. Xamarin.Forms之主题

    Xamarin.Forms应用程序可以使用DynamicResource标记扩展在运行时动态响应样式更改. 此标记扩展类似于StaticResource标记扩展,两者都使用字典键从ResourceDi ...

  8. java的多线程之入门

    一.java多线程基本概念 调用run():在主线程调用子线程的run()方法会中断主线程等到子线程执行完毕之后再执行主线程. 调用start():在主线程中执行子线程的start()后会与主线程同步 ...

  9. React渲染和事件处理

    一.列表渲染 ①在列表中,绑定数组成员会直接把成员渲染 <div id="app"></div> <script src="node_mod ...

  10. Xcode9/iOS 11 无线调试方法

    1.确保手机已经升级到 iOS 11 ,Xcode 已经升级到 9.0 版本,用手机连接电脑,打开 Xcode 选择路径如下图 2.勾选 Connect via network ,勾选之后拔掉手机. ...