Java学习需要掌握的一些知识
Java学习需要掌握的一些知识:
《一》1.Jvm 部分
Jvm 内存模型、Jvm 内存结构、Jvm 参数调优、Java 垃圾回收
《二》Java 基础部分
1.必须会使用 List,Map,Stack,Queue,Set。
2.熟悉 Java 排序工具类使用 java.uti.Arrays.sort() java.util.Collections.sort()
3.常用集合框架源码分析,Arraylist、Linkelist、Hasmap、Concurrenthashmap 、TreeSet 等实现原理。
4.常用类源码分析,String、Inteager、Stringbuffer、Stringbuilder、ClassLoade、URLClassLoader 等实现原理
5.熟悉 IO、NIO 及 NIO 实现原理
6.熟悉 java 序列化及反序列化
7.虚引用,弱引用,软引用
8.熟悉 jms、jmx、注解的实现原理
《三》多线程部分
1.怎么创建线程、线程安全、线程之间同步、java 内存模型、线程池、线程池实现原理
《四》java 并发编程
1. 熟悉 java 常用并发包
2.阅读 javaRunnable 、Callable、ReentrantLock、ReentrantReadWriteLock 源码。
3.锁种类有那些?锁的实现原理?synchronized 和 lock 区别
4.什么是守护线程,守护线程和非守护线程区别
5.volatile 关键字的理解
《四》java 底层知识
1.了解字节码、class 文件格式、手动实现 javap
《五》常用算法
冒泡、选择、递归、二叉树、红黑树等
《六》设计模式
1.aop 底层实现
2.模板方法、策略设计、单例、工厂等
《七》网络通讯
1. http、rmi、socket、httpclient、webservice、rpc、mina
2.ftp、smtp 协议
《八》常用框架源码
1. spring、springmvc、ibatis 实现原理
2.服务器优化知识、tomcat、jetty 优化
《九》关系型数据库
mysql 怎么分表分库、怎么查询执行计划、怎么做读写分离、怎么优化 sql、怎么建立索引、索引分类、索引实现原理、怎么做主从复制
《十》NOSQL
redis 数据类型、redis 实现原理、zset 与 set 区别?redis 如何实现集群?
《十一》高并发与网站架构
1.MQ 有那些?MQ 应用场景?MQ 实现原理?MQ 协议有那些?
2.熟悉 nginx 常用配置、例如负载均衡、反向代理、高可用
3.集群下 session 共享解决方案,及共享解决方案实现原理
4.高并发解决方案
5.动静分离、负载均衡、CDN、微服务、dubbo 协议、zap 实现原理
6.分布式架构、分布式锁、分布式事务处理解决方案
《十二》云计算与大数据
Solr、Lucene、ElasticSearch、Storm、了解 Spark、Hadoop、分布式日志收集 flume,kafka,logstash、数据挖掘,mahout
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?