Java学习大纲Cooper190113

堆、栈、方法区、直接内存、堆和栈区别

内存可见性、重排序、顺序一致性、volatile、锁、final

内存分配策略、垃圾收集器(G1)、GC算法、GC参数、对象存活的判定

oop-klass、对象头

即时编译器、编译优化

classLoader、类加载过程、双亲委派(破坏双亲委派)、模块化(jbossmodules、osgi、jigsaw)

jps,jstack,jmap、jstat,jconsole,jinfo,jhat,javap,btrace、TProfiler

编译与反编译

javac、javap、jad、CRF

Java基础知识

String、Integer、Long、Enum、BigDecimal、ThreadLocal、ClassLoader&URLClassLoader、ArrayList&LinkedList、HashMap&LinkedHashMap&TreeMap&CouncurrentHashMap、HashSet&LinkedHashSet&TreeSet

JDK6和JDK7中substring的原理及区别、

replaceFirst、replaceAll、replace区别、

String对“+”的重载、

String.valueOf和Integer.toString的区别、

字符串的不可变性

Integer的缓存机制

transient、instanceof、volatile、synchronized、final、static、const原理及用法。

常用集合类的使用

ArrayList和LinkedList和Vector的区别

SynchronizedList和Vector的区别

HashMap、HashTable、ConcurrentHashMap区别

apache集合处理工具类的使用

不同版本的JDK中HashMap的实现的区别以及原因

枚举的用法、枚举与单例、Enum类

bio、nio和aio的区别、三种IO的用法与原理、netty

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

什么是序列化与反序列化、为什么序列化

序列化底层原理

序列化与单例模式

protobuf

为什么说序列化并不安全

元注解、自定义注解、Java中常用注解使用、注解与反射的结合

什么是Java消息服务、JMS消息传送模型

java.lang.management.*、javax.management.*

泛型与继承

类型擦除

泛型中KTVE

object等的含义、泛型各种用法

junit、mock、mockito、内存数据库(h2)

java.lang.util.regex.*

commons.lang,commons.*...guava-librariesnetty

异常类型、正确处理异常、自定义异常

解决乱码问题、常用编码方式

Java中语法糖原理、解语法糖

Java并发编程

Thread、Runnable、Callable、ReentrantLock、ReentrantReadWriteLock、Atomic*、Semaphore、CountDownLatch、、ConcurrentHashMap、Executors

自己设计线程池、submit()和execute()

死锁、死锁如何排查、Java线程调度、线程安全和内存模型的关系

happens-before、编译器指令重排和CPU指令重

synchronized是如何实现的?

synchronized和lock之间关系

不使用synchronized如何实现一个线程安全的单例

守护线程和非守护线程的区别以及用法

二、进阶篇Java底层知识

用位运算实现加、减、乘、除、取余

设计模式

单例、策略、工厂、适配器、责任链。

网络编程

三次握手与四次关闭、流量控制和拥塞控制、OSI七层模型、tcp粘包与拆包

cookie被禁用,如何实现session

实现客户端缓存功能,支持返回304实现可并发下载一个文件使用线程池处理客户端请求使用nio处理客户端请求支持简单的rewrite规则上述功能在实现的时候需要满足“开闭原则”

框架知识

SpringBoot的starter原理,自己实现一个starter

应用服务器

工具

三、高级篇新技术

lambda表达式、StreamAPI、

Jigsaw、Jshell、ReactiveStreams

局部变量类型推断、G1的并行FullGC、ThreadLocal握手机制

响应式编程

性能优化

使用单例、使用Future模式、使用线程池、选择就绪、减少上下文切换、减少锁粒度、数据压缩、结果缓存

线上问题分析

线程Dump、内存Dump、gc情况

分析死锁、分析内存泄露

HeapOutOfMemory、YoungOutOfMemory、MethodAreaOutOfMemory、ConstantPoolOutOfMemory、DirectMemoryOutOfMemory、StackOutOfMemoryStackOverFlow

内存溢出、线程死锁、类加载冲突

当一个Java程序响应很慢时如何查找问题、

当一个Java程序频繁FullGC时如何解决问题、

如何查看垃圾回收日志、

当一个Java应用发生OutOfMemory时该如何解决、

如何判断是否出现死锁、

如何判断是否存在内存泄露

编译原理知识

操作系统知识

数据库知识

如何查看执行计划,如何根据执行计划进行SQL优化

事务的隔离级别、事务能不能实现锁的功能

行锁、表锁、使用数据库锁实现乐观锁、

h2

redis、memcached

数据结构与算法知识

栈、队列、链表、数组、哈希表、

二叉树、字典树、平衡树、排序树、B树、B+树、R树、多路树、红黑树

大数据知识

基本概念、常见用法

在linux上部署solr,solrcloud,,新增、删除、查询索引

在linux上部署storm,用zookeeper做协调,运行stormhelloworld,local和remote模式运行调试stormtopology。

HDFS、MapReduce

网络安全知识

XSS的防御

SQL注入、XML注入、CRLF注入

MD5,SHA1、DES、AES、RSA、DSA

memcached为什么可以导致DDos攻击、什么是反射型DDoS

四、架构篇分布式

数据一致性、服务治理、服务降级

2PC、3PC、CAP、BASE、可靠消息最终一致性、最大努力通知、TCC

服务注册、服务发现,服务治理

怎样打造一个分布式数据库、什么时候需要分布式数据库、mycat、otter、HBase

mfs、fastdfs

缓存一致性、缓存命中率、缓存冗余

微服务

SOA、康威定律

高并发

ActiveMQ

监控

CPU、内存、磁盘I/O、网络I/O等

进程监控、语义监控、机器资源监控、数据波动

日志、埋点

负载均衡

tomcat负载均衡、Nginx负载均衡

DNS

DNS原理、DNS的设计

CDN

数据一致性

五、扩展篇云计算

IaaS、SaaS、PaaS、虚拟化技术、openstack、Serverlsess

搜索引擎

Solr、Lucene、Nutch、Elasticsearch

权限管理

Shiro

区块链

哈希算法、Merkle树、公钥密码算法、共识算法、Raft协议、Paxos算法与Raft算法、拜占庭问题与算法、消息认证码与数字签名

挖矿、共识机制、闪电网络、侧链、热点问题、分叉

人工智能

数学基础、机器学习、人工神经网络、深度学习、应用场景。

THE END
1.区块链技术对废弃资源回收的应用.pptx区块链技术对废弃资源回收的应用汇报人:PPT可修改20240122引言废弃资源回收现状分析区块链技术在废弃资源回收中的应用基于区块链技术的废弃资源回收系统设计系统实现与测试分析总结与展望contents目录01引言废弃资源回收现状01目前,https://m.renrendoc.com/paper/315126093.html
2.区块链与环保:如何促进可持续发展区块链技术是一种去中心化的分布式数据存储和交易系统,它的核心概念是将数据存储在一个由多个节点组成的链表中,每个节点称为区块,每个区块包含一定数量的交易数据,并且与前一个区块通过一个哈希值链接在一起。这种结构使得区块链具有高度的安全性和不可篡改性,因此它被认为是一种有潜力的技术,可以应用于许多领域,包https://blog.csdn.net/universsky2015/article/details/137313394
3.进击的垃圾分类“区块链+”突起狂风2019年,长沙县将试点“区块链+垃圾分类”模式,在城区5个街道分别建设1个“蓝岛”,配备相应数量的“蓝鲸”,打通可回收物、有害垃圾的收运体系,在整个城区形成“三网融合”蓝色完整体系,全面铺开‘小蓝屋’布点。 青岛 在青岛举办的区块链与人工智能跨界融合峰会上,就提出了基于区块链技术在互联网+垃圾分类智能回收https://www.solidwaste.com.cn/news/298330.html
4.百度测开一面凉经+技术中台质量部一二三四面(已OC)4.对比下你说的垃圾回收算法有什么优缺点适合怎样的业务 5.线程池,了解什么呢,优点跟缺点是什么 6.进程跟线程区别 7.IO密集型和CPU密集型应该怎么选取多线程跟多进程 8.线程的五种状态,是怎么相互转换的 9.https加密过程 10.Fiddler,postman 抓包过程,注意什么,然后代理的是哪一部分 https://ceshiren.com/t/topic/18913
5.海南将以“互联网+回收”模式推动塑料垃圾治理海南省商务厅市场建设处二级调研员陈大富介绍,当前塑料垃圾处理存在精细化分拣水平低、再生利用率低、商品交易信息不对称等问题,而以物联网、大数据、区块链等技术为基础的“互联网+回收”模式将有效解决货源散、回收难等瓶颈问题,同时可以实现回收全流程信息追溯,做到及时、公开、共享。 https://m.gmw.cn/2022-05/07/content_1302934135.htm
6.JDK8默认垃圾回收器腾讯云开发者社区JDK8默认垃圾回收器 ? Contents java-XX:+PrintCommandLineFlags-version-XXInitialHeapSize536870912-XXMaxHeapSize=8589934592XXPrintCommandLineFlags-XXUseCompressedClassPointersXX:+UseCompressedOops-XX:+UseParallelGC java version"1.8.0_261"Java(TM)SERuntimeEnvironment(build1.8.0_261-b12)JavaHotSpot(TM)64https://cloud.tencent.com/developer/article/1791804
7.代代科技垃圾分类行业专家代代环境科技,垃圾分类智慧监管解决方案服务商,专注于垃圾分类全过程监管;旗下产品哗哗回收采用“互联网+”“以车代库”模式,主要面向于从事可回收物回收的企业或个人,基于公有云模式,结合物联网IOT、大数据技术, 实现居民参与度高、企业可盈利、政府有效监管,可复制的https://www.daidai.cn/
8.WebAssembly现在,WebAssembly 根本不支持垃圾回收。内存是手动管理的(就像 C/C++)。虽然这些可能让开发者编程更困难,但它的确提升了性能。 综上所述,WebAssembly代码在优化和执行上都有更高的效率。同时也节省了Parsing,重新优化和GC。所以性能上有了质的提升。 那么开发一个WebAssembly容易么?下面我们通过一个Demo体验一下。 https://www.jianshu.com/p/f7d98c422e0c
9.科学网—电子垃圾处理的经验借鉴4) 健全电子垃圾回收环节,引导电子垃圾处理产业化和无害化。由于电子垃圾产业化投资较大,其原材料(电子垃圾)若供应不上,生产就要受到影响,政府必须采取一些相应的免息、免税、贷款优惠等措施,促进电子垃圾处理产业完善回收系统和处理系统,以使电子垃圾的产业化处理能正常运行。 https://www.360doc.cn/article/64440488_839320102.html
10.小水母资源回收废品系统开发经营范围游戏软件设计制作;集成电路设计;数据处理和存储服务;信息技术咨询服务;计算机房维护服务;信息系统集成服务;软件开发;互联网区块链技术研究开发服务;软件批发;软件零售;软件服务;人工智能算法软件的技术开发与技术服务;软件测试服务;软件技术推广服务;互联网商品销售(许可审批类商品除外);互联网商品零售(许可审批类商http://guangzhou.11467.com/info/14548654.htm
11.淄博市博山区润泽固废处置厂铸造废砂及建筑垃圾回收利用项目.pdf淄博市博山区润泽固废处置厂铸造废砂及建筑垃圾回收 利用项目.pdf,建设项目环境影响报告表 项目名称:淄博市博山区润泽固废处置厂铸造废砂及建筑垃圾回收 利用项目 建设单位 (盖章):淄博市博山区润泽固废处置厂 编制日期:2018 年 12 月 中华人民共和国生态环境部制 《建https://max.book118.com/html/2021/0806/8127073113003130.shtm
12.《天津市“十四五”城市基础设施建设实施方案》发布!(二)完善生活垃圾资源回收利用体系 加强可回收物回收、分拣、处置设施建设,合理布局、统筹推进生活垃圾分类回收与再生资源回收“两网融合”。建设与生活垃圾可回收物收运体系相衔接的再生资源回收网点,提高可回收物再生利用和资源化水平。开展回收利用行业转型升级,规范建设回收网络体系,推动废玻璃等低值可回收物的回收和https://www.sayyas.com/index.php?g=Content&m=Pagedis&a=shows_art&catid=41&id=775