当前位置 : 首页> Java培训 > 零基础小白学Java要掌握这些知识点

零基础小白学Java要掌握这些知识点

时间:2021-07-11 22:25:19   已访问:658次
热门专业

不论是你想要深入研究 Java 并发,还是说要准备面试,你都可以看看这本书。

下面是我总结的一些关于并发的小问题,你可以拿来自测:

什么是线程和进程? 线程与进程的关系,区别及优缺点?

说说并发与并行的区别?

为什么要使用多线程呢?

使用多线程可能带来什么问题?(内存泄漏、死锁、线程不安全等等)

创建线程有哪几种方式?(a.继承 Thread 类;b.实现 Runnable 接口;c. 使用 Executor 框架;d.使用 FutureTask)

说说线程的生命周期和状态?

什么是上下文切换?

什么是线程死锁?如何避免死锁?

说说 sleep() 方法和 wait() 方法区别和共同点?

Java 内存模型(JMM)、重排序与 happens-before 原则了解吗?

synchronized 关键字、volatile 关键字

ThreadLocal 有啥用(解决了什么问题)?怎么用?原理了解吗?内存泄露问题了解吗?

为什么要用线程池?ThreadPoolExecutor 类的重要参数了解吗?ThreadPoolExecutor 饱和策略了解吗?线程池原理了解吗?几种常见的线程池了解吗?为什么不推荐使用FixedThreadPool?如何设置线程池的大小?

AQS 了解么?原理?AQS 常用组件:Semaphore (信号量)、CountDownLatch (倒计时器) CyclicBarrier(循环栅栏)

ReentrantLock 、 ReentrantReadWriteLock 、StampedLock(JDK8)

CAS 了解么?原理?

Atomic 原子类

并发容器:ConcurrentHashMap 、 CopyOnWriteArrayList 、 ConcurrentLinkedQueueBlockingQueue 、ConcurrentSkipListMap

Future 和 CompletableFuture

......

JVM

对于 Java 程序员来说,JVM 帮助我们做了很多事情比如内存管理、垃圾回收等等。在 JVM 的帮助下,我们的程序出现内存泄漏这些问题的概率相对来说是比较低的。但是,这并不代表我们在日常开发工作中不会遇到。万一你在工作中遇到了 OOM 问题,你至少要知道如何去排查和解决问题吧!

并且,就单纯从面试角度来说,JVM 是 Java 后端面试(大厂)中非常重要的一环。不论是应届还是社招,面试国内的一些大厂,你都会被问到很多 JVM 相关的问题(应届的话侧重理论,社招实践)。

只有搞懂了 JVM 才有可能真正把 Java 语言“吃透”。学习 JVM 这部分的内容,一定要注意要实战和理论结合。

书籍的话,《深入理解 Java 虚拟机》 这本书是首先要推荐的。


推荐内容