java
文章平均质量分 94
__________习惯
这个作者很懒,什么都没留下…
展开
-
Java学习笔记——并发编程(三)
obj.wait()让进入object监视器的线程到waitSet等待obj.notify()在object上正在waitSet等待的线程中挑一个唤醒obj.notifyAll()让object上正在waitSet等待的对象全部唤醒它们都是线程之间协作的手段,都属于Object对象的方法。必须获得此对象的锁,才能调用这几个方法。log.debug("执行....");try{//让线程在obj上一直等待下去}catch(InterruptedExceptione){...原创 2022-07-29 10:38:12 · 783 阅读 · 0 评论 -
Java学习笔记——并发编程(二)
Monitor被翻译为监视器或管程 每个Java对象都可以关联一个Monitor对象,如果使用synchronized给对象上锁(重量级)之后,该对象头的Mark Word中就被设置指向Monitor对象的指针原理之synchronized,轻量级锁,偏向锁,膨胀锁...原创 2022-07-28 17:36:54 · 193 阅读 · 0 评论 -
Java学习笔记——并发编程(一)
建议学习Java并发编程前,先学习一下jvm,便于有更深刻的理解。本篇笔记主要讲述了共享存在的问题以及解决方法(阻塞式和非阻塞式),接着讲述了阻塞式中synchronized关键字,最后讲述了线程安全分析。...原创 2022-07-27 21:28:51 · 254 阅读 · 0 评论 -
Java学习笔记——JVM快速入门(三)
本文将主要介绍jvm的垃圾回收机制。在讲解之前,先放出几道GC面试题。相信在看完和之后,对前三道题已经能够回答出来了,本文将围绕第四道题进行讲解。原创 2022-07-21 22:20:16 · 221 阅读 · 0 评论 -
Java学习笔记——JVM快速入门(二)
本文将主要介绍JVM的方法区、栈和堆。 方法区是被所有线程共享,所有字段和方法字节码,以及一些特殊方法,如构造函数,接口代码也在此定义,简单说,所有定义的方法的信息都保存在该区域,此区域属于共享区间。 静态变量、常量、类信息(构造方法、接口定义)、运行时的常量池存在方法区中,但是实例变量存在堆内存中,和方法区无关 static final Class 常量池 1.先进后出,类似于桶 2.主管程序的运行,生命周期和线程同步。栈是线程私有的,不能实现线程之原创 2022-07-21 21:15:49 · 248 阅读 · 0 评论 -
Java学习笔记——JVM快速入门(一)
在入门之前,先提出几个面试常问的问题。1.请你谈谈对JVM的理解?Java8虚拟机和之前的变化更新?2.什么是OOM,什么是栈溢出StackOverFlowError?怎么分析?3.JVM常用的调优参数有哪些?4.内存快照如何抓取,怎么分析Dump文件5.谈谈JVM中,你对类加载器的认识?下面将从JVM位置、体系结构、类加载器、Native、PC寄存器来介绍。相信介绍完后,你能顺利的回答上面提出的面试题。......原创 2022-07-21 21:12:20 · 294 阅读 · 0 评论 -
Java学习笔记——面向对象
首先介绍了静态方法和非静态方法的调用方式,接着对static关键字进行补充介绍,然后介绍了Java是值引用的,介绍了this,super的概念,继承、多态,抽象方法与接口的定义与实现原创 2022-07-20 15:35:58 · 224 阅读 · 1 评论 -
Java学习笔记——String
介绍了String创建方式(两种)、特点(不可变性、安全性),根据不可变性的不足引入了对StringBuilder以及StringBuffer的介绍,并将三者进行了对比原创 2022-07-18 17:20:42 · 161 阅读 · 0 评论