Java技术栈

摘要:
Java语言util。阵列。sort()java。util。收藏。sort()Java实现了列表重复数据消除,并保留了数据Java正则表达式的原始出现顺序:为什么序列化和序列化与单例模式2、Java IO相关的Java相关。io.*java语言。nio和反应堆设计模式文件编码。

内容:

1、Java基础(JavaSE)

2、数据结构与算法与设计模式

3、计算机理论知识

4、数据库

5、Java web(JavaEE)

6、消息队列

7、Linux及服务器相关

8、分布式相关

9、拓展技能

参考:https://blog.csdn.net/ferrari_cal/article/details/79093826

以下整理结合个人实际情况

一、Java基础(JavaSE)

1、Java基础常用

熟悉Java中各种变量类型

熟悉Java String的使用,熟悉String的各种函数

熟悉Java中各种关键字

学会使用Java内置的List,Map,Stack,Queue,Set:

  • 上述数据结构的遍历和常用方法
  • 上述数据结构的使用场景

Java内置Array/List排序“

  • java.util.Arrays.sort()
  • java.util.Collections.sort()

Java实现对List去重并且保留数据原始的出现顺序

Java正则表达式:

实现通过正则表达式提取一段文本中的电子邮件,并将@替换为#输出 =》  java.lang.util.regex.*

Java反射与javassist

  • 反射与工厂模式
  • java.lang.reflect.*

Java序列化:

  • java.io. Serializable
  • 什么是序列化,为什么序列化
  • 序列化与单例模式

2Java IO相关

  • java.io.*
  • java.nio.*
  • nio和reactor设计模式
  • 文件编码,字符集

3、JVM与Java底层知识

  • Java内存模型,Java内存管理,Java堆和栈,垃圾回收
  • 了解JVM各种参数及调优
  • 类加载机制,也就是双亲委派模型
  • Java内存分配模型
  • 线程共享的:堆区、永久区   线程独享的:虚拟机栈、本地方法栈、程序计数器
  • 内存分配机制:年轻代(Eden区、两个Survivor区)、年老代、永久代以及他们的分配过程
  • 强引用、软引用、弱引用、虚引用与GC
  • Java 8的内存分代改进
  • 垃圾回收算法

4、Java并发编程(多线程)

5、Java网络编程(socket)

6、Java泛型编程

7、阅读源码

 1 java.lang.String
 2 java.lang.Integer
 3 java.lang.Long
 4 java.lang.Enum
 5 java.math.BigDecimal
 6 java.lang.ThreadLocal
 7 java.lang.ClassLoader
 8 java.net.URLClassLoader
 9 java.util.ArrayList
10 java.util.LinkedList
11 java.util.HashMap
12 java.util.LinkedHashMap
13 java.util.TreeMap
14 java.util.HashSet
15 java.util.LinkedHashSet
16 java.util.TreeSet

二、数据结构与算法与设计模式

1、常用数据结构

(1)链表

(2)栈与队列

(3)数组和矩阵

(4)字符串

(5)二叉树

(6)并查集

(7)前缀树

(8)图

2、常用算法

(1)排序算法和查找算法

(2)位运算

(3)递归

(4)动态规划

(5)贪心法

(6)回溯法

(7)分支限界法

3、海量数据问题

(1)布隆过滤器

(2)一致性哈希

4、设计模式

(1)最重要的模式(要求能手写出来)

  • 单例模式
  • 适配器模式
  • 工厂模式
  • 观察者模式
  • 装饰器模式
  • ThreadLocal设计模式

(2)其他模式(了解即可)

  • 创建型模式:抽象工厂模式、单例模式、建造者模式、原型模式。
  • 结构型模式:代理模式、桥接模式、组合模式、享元模式。
  • 行为型模式:策略模式、模板方法模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
  • 其实还有两类:并发型模式和线程池模式

4、其他

三、计算机理论知识

1、计算机网络

2、操作系统

3、计算机组成原理

4、编译原理

5、网络安全知识

6、其他理论知识

四、数据库

1、数据库基础理论

2、sql

3、MySQL数据库

4、NoSql数据库mongoDB

5、KV键值系统redis - Memcached

五、Java web(JavaEE)

1、web基础知识

(1)计算机网络体系结构

(2)HTTP协议

(3)web服务器

(4)JavaEE

(5)EJB和JavaBeam

(6)Ioc和AOP

(7)SOAP和REST

(8)ssh和ssm

(9)JDBC API

2、servlet与jsp

3、struts2框架

4、ORM模型 - Hibernate和mybatis

5、spring框架

6、springMVC框架

六、消息队列

1、kafka

2、RocketMQ

3、Notify

4、Hermes

七、Linux及服务器相关

1、Linux常用命令 

2、web服务器tomcat、ngnix

3、docker使用

八、分布式相关

九、拓展技能

1、云计算、虚拟化

2、监控、负载均衡

3、使用git

4、使用maven

5、了解编码

6、大数据相关

免责声明:文章转载自《Java技术栈》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Spring配置文件中<bean>标签的scope属性Linux C++ 开发常用工具,常用指令工作手册下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

【数据结构与算法】用go语言实现数组结构及其操作

引言   数组结构是一种很常见的数据结构,并且在大部分编程语言中都存在,这些语言都提供了现成的可以立马就能使用的数组这种数据结构。为了更好的理解数组,这边文章就是来实现数组。 数组的特点   1.内存中数据之间紧密排列在一起。   2.新增元素需要开辟内存空间用以存放新的元素。   3.新增元素时候,如果新增的元素在其他元素中间,那么该新增元素的位置后面所...

SQL Server里的闩锁介绍

在今天的文章里我想谈下SQL Server使用的更高级的,轻量级的同步对象:闩锁(Latch)。闩锁是SQL Server存储引擎使用轻量级同步对象,用来保护多线程访问内存内结构。文章的第1部分我会介绍SQL Server里为什么需要闩锁,在第2部分我会给你介绍各个闩锁类型,还有你如何能对它们进行故障排除。 为什么我们需要闩锁?闩锁首次在SQL Serve...

NameNode和DataNode工作原理剖析

            NameNode和DataNode工作原理剖析                                      作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.DataNode的工作原理 1>.查看数据节点存储数据的目录   系统中的数据块的位置并不是由NameNode维护的,而是以块列表的形式...

Serializable

转自http://blog.csdn.net/cdl2008sky/article/details/6747396 Serizlizable 作用 对于一个存在于Java虚拟机中的对象来说,其内部的状态只保持在内存中。JVM停止之后,这些状态就丢失了。在很多情况下,对象的内部状态是需要被持久化下来的。提到持久化,最直接的做法是保存到文件系统或是数据库之中。...

长沙社区团购独角兽《兴盛优选》 18k 面试题记录,已拿offer!

长沙或者想从北上广大回长沙的小伙伴,应该都听说过《兴盛优选》,一家位于长沙市从事社区团购业务的独角兽企业。 目前日订单1000+万,在长沙薪资也较有诱惑力,要不要来挑战一下? 我在里面潜伏过一段时间,发现里面缺人非常严重,大家都知道长沙互联网发展的晚,目前《兴盛优选》的招人要求也比较高(相对长沙其他企业),所以招到满意的人非常少,100份简历可能只能进1到...

golang数据结构之双链表

目录结构:  doubleLink.go package link import ( "fmt" ) //HerosNode 链表节点 type HerosNode struct { ID int Name string pre *HerosNode //指针 next *HerosNode //指针 }...