当前位置: 首页>后端>正文

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第1张

先说一下自己的个人情况,大专生,16 年通过校招进入广州光汇科技软件公司,干了接近 3 年的 CRUD,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了三年的 CRUD,已经让我变得不思进取,谈了 2 年的女朋友也因为我的心态和工资和我分手了。于是,我决定要改变现状,放眼于今年的金三银四!

刚开始准备时,自己都蒙了,3 年的 CRUD 让我的技术没有一丝的进步,提升的只有我的年龄...

没办法,我找到了我的导师,作为他的得力弟子,在他了解了我的情况后(几乎就是 Java 基础开始),直接甩给我一份学习笔记说到:“去吧,这里有你需要的所有东西,不要来找我了,我都嫌丢人!”。

下面我们就来了解一下这份笔记有多厉害!(刚开始还以为导师在吹牛逼,结果学完直接给我导师给跪了...)

《Java 中高级核心知识全面解析》这份文档总页数:524 页。分为八个部分每个部分详细地讲解了核心知识点。

第一部分 扎实的 Java 基础 (Java 基础+容器+并发+JVM)

第二部分 网络知识(计算机网络技术+HTTPS 中的 TLS)

第三部分 Linux

第四部分 数据结构与算法

第五部分 数据库(MySQL+Redis)

第六部分 系统设计(RestFul API+常用框架+认证授权+分布式+大型网站架构+微服务)

第七部分 必会工具(Git+Docker)

第八部分 面试指南(简历应该如何写+如何准备面试+我的学习方法)

由于整个笔记比较全面,内容相当的多 ,这里仅展示资料的一些截图,如有需要获取文中提到的 “Java 中高级核心知识全面解析” 的朋友 文末 有直达获取地址。

第一部分 Java

(一). 基础

1. Java 基本功

Java 入门(基础概念与常识)

Java 语法

基本数据类型

方法(函数)

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第2张

2. Java 核心技术

集合

异常

多线程

文件与 I\O 流

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第3张

3. Java 面向对象

类和对象

面向对象三大特征

修饰符

接口和抽象类

其它重要知识点

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第4张

2. 并发

1. 并发容器

JDK 提供的并发容器总结

ConcurrentHashMap

CopyOnWriteArrayList

ConcurrentLinkedQueue

BlockingQueue

ConcurrentSkipListMap

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第5张

2. 线程池

使用线程池的好处

Executor 框架

(重要)ThreadPoolExecutor 类简单介绍

(重要)ThreadPoolExecutor 使用示例

几种常见的线程池详解

ScheduledThreadPoolExecutor 详解

线程池大小确定

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第6张

3. 乐观锁与悲观锁

何谓悲观锁与乐观锁

乐观锁常见的两种实现方式

乐观锁的缺点

CAS 与 synchronized 的使用情景

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第7张

4. Atomic

Atomic 原子类介绍

基本类型原子类

数组类型原子类

引用类型原子类

对象的属性修改类型原子类

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第8张

5. AQS

AQS 简单介绍

AQS 原理

Semaphore(信号量)-允许多个线程同时访问

CountDownLatch (倒计时器)

CyclicBarrier(循环栅栏)

ReentrantLock 和 ReentrantReadWriteLock

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第9张

大厂面试资料

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第10张

容器

1. ArrayList

ArrayList 简介

ArrayList 核心源码

ArrayList 源码分析

ArrayList 经典 Demo

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第11张

2. LinkedList

简介

内部结构分析

LinkedList 源码分析

LinkedList 类常用方法测试

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第12张

3. HashMap

HashMap 简介

底层数据结构分析

HashMap 源码分析

get 方法

resize 方法

HashMap 常用方法测试

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第13张

JVM

1. Java 内存区域

概述

运行时数据区域

HotSpot 虚拟机对象探秘

重点补充内容

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第14张

2. JVM 垃圾回收

揭开 JVM 内存分配与回收的神秘面纱

对象已经死亡?

垃圾收集算法

垃圾收集器

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第15张

3. JDK 监控和故障处理工具

JDK 命令行工具

JDK 可视化分析工具

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第16张

4. 类文件结构

概述

Class 文件结构总结

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第17张

5. 类加载过程

类加载过程

卸载

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第18张

6. 类加载器

回顾一下类加载过程

类加载器总结

双亲委派模型

自定义类加载器

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第19张

大厂面试资料

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第20张
从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第21张

网络

(一). 计算机网络知识

计算机概述

物理层

数据链路层

网络层

运输层

应用层

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第22张

(二). HTTPS 中的 TLS

SSL 与 TLS

从网络协议的角度理解 HTTPS

从密码学的角度理解 HTTPS

RSA 简单示例

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第23张

三、Linux

(一). 从认识操作系统开始

操作系统简介

操作系统简单分类

操作系统的内核

操作系统的用户态与内核态

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第24张

(二). 初探 Linux

Linux 简介

Linux 诞生简介

Linux 的分类

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第25张

(三) Linux 文件系统概览

Linux 文件系统简介

Inode

文件类型与目录结构

Linux 目录树

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第26张

(四) Linux 基本命令

目录切换命令

目录的操作命令(增删改查)

文件的操作命令(增删改查)

压缩文件的操作命令

Linux 的权限命令

Linux 用户管理

Linux 系统用户组的管理

其他常用命令

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第27张

四、数据结构与算法

(一). 数据结构(布隆过滤器)

什么是布隆过滤器?

布隆过滤器的原理介绍

布隆过滤器使用场景

通过 Java 编程手动实现布隆过滤器

利用 Google 开源的 Guava 中自带的布隆过滤器

Redis 中的布隆过滤器

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第28张

五、数据库

(一). MySQL

基本操作

数据库操作

表的操作

数据操作

字符集编码

数据类型(列类型)

列属性(列约束)

建表规范

SELECT

UNION

子查询

连接查询(join)

TRUNCATE

备份与还原

视图

事务(transaction)

锁表

触发器

SQL 编程

存储过程

用户和权限管理

表维护

杂项

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第29张

(二). Redis

5 种基本数据结构

跳跃表

分布式锁深入探究

Redlock 分布式锁

如何做可靠的分布式锁,Redlock 真的可行么

神奇的 HyperLoglog 解决统计问题

亿级数据过滤和布隆过滤器

GeoHash 查找附近的人

持久化

发布订阅与 Stream

[集群]入门实践教程

Redis 数据类型、编码、底层数据结构

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第30张

六、系统设计

(一). RestFul API

重要概念

REST 接口规范

HATEOAS

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第31张

(二). 常用框架

Spring 常见问题

Spring 常用注解

Spring 事务

Spring IOC 和 AOP 详解

Spring 中 Bean 的作用域与生命周期

SpringMVC 工作原理详解

Spring 中都用到了那些设计模式

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第32张

(三). 认证授权(JWT、SSO)

JWT 身份认证优缺点分析以及常见问题解决方案

SSO 单点登录

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第33张

(四). 分布式

分布式相关概念入门

Dubbo

消息队列其实很简单

RabbitMQ

RocketMQ

Kafka

API 网关

分布式 ID

限流的算法有哪些?

Zookeeper

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第34张

(五). 大型网站架构

如何设计一个高可用系统?要考虑哪些地方?

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第35张

(六). 微服务

Spring Cloud

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第36张

七、必会工具

(一). Git

版本控制

认识 Git

Git 使用快速入门

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第37张

(二). Docker

认识容器

再来谈谈 Docker 的一些概念

容器 VS 虚拟机

Docker 基本概念

常见命令

Build Ship and Run

简单了解一下 Docker 底层原理

总结

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第38张

八、面试指南

(一). 程序员简历该怎么写

为什么说简历很重要?

下面这几点你必须知道

必须了解的两大法则

项目经历怎么写?

专业技能该怎么写?

排版注意事项

其他的一些小 tips

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第39张

(二). 如何准备面试

如何获取大厂面试机会?

面试前的准备

面试之后复盘

如何学习?学会各种框架有必要吗

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第40张

(三). Java 学习路线和方法推荐

Java 基础

操作系统与计算机网络

数据结构与算法

前端知识

MySQL

常用工具

常用框架

多线程的简单使用

分布式

深入学习

微服务

总结

从事Java程序员五年的艰辛之路。月薪从3k到18k,我整整花了五年,第41张

https://www.xamrdz.com/backend/3zj1941166.html

相关文章: