Thales的博客站
切换导航
导航
博客首页
关于博主
CV
工具
博客信息
Java后端知识点整理
标签
:
java
作者:Thales 尊重博主原创文章,转载请注明文章出于此处。
>本文同时上传在[CSDN](https://blog.csdn.net/Tales_/article/details/82724224) ## 并发 1. Runnale 可以说是一个没有返回值的回调接口,这个回调传给Thread类或者线程池执行 2. Callable 可以看作一个有返回值的回调接口,这个回调传给线程池执行,callable怎么与Future、futureTsak、线程池等实现有返回结果的线程创建 3. Thread类:重要方法:start,sleep,join,yield,最好看下源码了解下怎么实现的(结合Object类的wait,notify,notifyAll,也看看Object源码) 4. synchronized 用法和原理(涉及到对象在虚拟机中的内存布局) 5. 线程池的创建以及使用,线程池的分类,线程池的怎么实现,创建线程池时各个参数的作用 6. java.util.concurrent 并发包的原子类 7. 并发包的常见并发的数据结构如阻塞队列、concurrentHashMap(怎么实现分段锁的)、CopyOnWriteArrayList 8. 并发包的常见显式锁(这个可以放后面看) 9. java虚拟机是怎么实现锁的(偏向锁、轻量级锁,自旋锁,重量级锁———也就是互斥锁) 10. 总结Java的线程安全的实现方法(内置锁,显示锁,原子类,同步容器以及并发容器) ## 数据库 1. mysql 隔离级别 (四种),和并发控制、锁的关系 2. mysql 并发控制 3. msql的锁的实现(行锁/表锁) 4. mysql的索引,索引与锁的关系。各个索引的区别 5. sql语法 6. 主从复制 7. 分布式数据库(待学习) 8. Redis(待学习) ## 网络 1. 如何使用java net创建socket并传输与接受数据 2. 如何使用NIO 3. 如何使用netty 4. netty和NIO的关系 5. NIO的channel、bytebuff、selector 6. netty的bootstrap、EventLoop、EventLoopGroup是什么?EventLoop和selector的关系是什么? 7. netty的Future、回调有什么作用?netty的Future和java JUC中的Future有什么区别? 8. netty的ChannelHandler、Channel、ChannelPipeLine、ChannelHandlerContext是什么?他们之间是什么关系? 9. netty的channelHandler和decoder、encoder 10. netty的ByteBuf和NIO的ByteBuff ## Java Web 1. spring 依赖注入和控制反转,有什么用,如何实现?怎么进行依赖注入(xml、java代码、通过标注实现自动注入?)Bean的scope有哪些,怎么实现不同scope之间的bean的注入? 2. spring AOP,有哪些概念,有什么作用,怎么使用AOP?原理是什么(动态代理)? 3. Spring MVC,servlet生命周期?请求的流程控制?dispatchServlet是什么?controller是什么?怎么写Controller? 4. HTTP协议结构、Cokies和session,重定向 5. mybatis使用?mybatis原理(动态代理)?持久层框架有哪些?为什恶魔选择使用mybatis而不是Hibernate 6. jsp与servlet? 7. filter与inceptor?shiro与filter 8. jdbc与datasource以及mybatis ## Java虚拟机 1. Java虚拟机的堆与栈是什么,它们的结构,它们有什么作用? 2. 堆与垃圾收集器,列举垃圾收集器的分类与收集方法,如何进行垃圾收集(引用计数与可达性)? 3. Minor GC与Full GC 4. 类的加载与初始化、加载过程,类加载器分类及其作用? 5. 对象的内存布局,对象头结构与锁 6. Java内存模型,堆、栈、计算机的高速缓存与寄存器在Java在Java内存模型中的角色 7. java内存模型与可见性 8. 内置锁(syncronized触发,也叫重量级锁)、轻量级锁、偏向锁以及自旋锁如何发挥作用 9. 字节码结构与对象内存布局的关系 10. 继承和多态在Java虚拟机中的体现 ## Java语言基础 1. Java语言Object类,有哪些方法 2. Java语言的基本类型与其包装类 3. Java语言的“==”和equals方法,基本类型和包装类的比较 4. Java语言的运算符 5. Java语言的集合类和对应类的常用方法 6. Java语言常用工具类(Math、Date、Calendar等,主要包含java.util包下的集合类以外的常用类) 7. Java的接口,接口的default和static方法,接口中的域 8. Java的抽象类,抽象类的构造函数 9. Java的继承与实现,组合与继承(has a和 is a关系) 10. Java的多态(主要体现在继承关系上) 11. Java的Lambda表达式与函数式接口 12. 有哪些常见的函数式接口(Runnable, Callable, Comparable, InvocationHandler),如何使用lambda快速实现Comparator? 13. Java Stream与函数式接口 14. 反射与动态代理,Class类的方法,Method类的方法,类和Class类的关系? 15. GCLib和Java提供的动态代理的区别 16. 动态代理的应用 17. 回调,有哪些常见的回调接口(和函数式接口类似) ## 设计模式 1. 列举目前所知道的设计模式 2. 设计模式的六大原则(单一职责、里氏替换、依赖倒置、狄米特法则、开闭原则以及接口隔离) 3. 设计模式分类(创建型、结构型和行为型) 4. 了解每种设计模式的作用
发布于:『2018-09-16 06:15』
博客类别:
java
阅读(2344) 评论(0)
上一篇:
快速了解java线程池
下一篇:
Java 8 Stream API 简介
用户评论
暂无评论
发表评论
验证码:
发表评论
文章分类
java(10)
Spring(0)
其它(1)
文章存档
2018年10月(1)
2018年09月(8)
2018年07月(2)
友情链接
分享到
暂无评论