自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 资源 (2)
  • 收藏
  • 关注

原创 深入Java代理,代理功能是如何实现的?

代理?InvokeHandler?Proxy?代理对象?它们到底有什么关系?JDK自带的代理功能又是如何实现的?

2022-08-11 19:08:32 187 1

原创 Java反射机制

静态语言 与 动态语言 动态语言: 运行时可以根据自身条件改变数据结构 动态语言举例:Object - c,JavaScript,C#,PHP,Python 等。 eg(JavaScript): 静态语言: 运行时不可改变自身数据结构。 静态语言举例:Java,C,C++。 Java不是动态语言,但Java是一门 “ 准动态语言 ” 。即可使用反射机制使Java获得类似于动态语言的特性。 Reflection(反射) Reflection(反射)允许程序在执行期间借助于 Reflection API

2021-04-05 15:41:15 330 2

原创 Synchronize下的volatile关键字

Synchronize下的volatile关键字 简介关键词:Synchronize与volatile Synchronize:无论是对于Synchronize同步方法异或是Synchronize块,本质是对某对象或某类加锁,让多线程进行队列化的有序地同步执行。 volatile:用于修饰变量。在多线程执行过程中,禁止线程从工作内存(缓存)中读取值。 volatile问题抛出: 让我们看到这样一个问题,我们设置一个含有boolean标志位的类Test,以及两个Runable接口实例,分别为MyT

2021-03-10 18:27:29 2578 9

原创 细论Synchronize的使用区别

Synchronize的作用 在并发编程中实现共享数据的同步。 Synchronize使用形式 Synchronize的使用方式大体分为两种:Synchronize同步方法 以及 Synchronize块。其本质都是对目标对象(或类)的锁定,让该方法变为原子操作。

2021-03-06 16:03:56 950 10

原创 ReenTrantLock (公平锁)Lock过程源码剖析

ReenTrantLock (公平锁)Lock过程源码剖析 情况一:第一个进入的线程 t1 进入lock 进入acquire(1); public final void acquire(int arg) { if (!tryAcquire(arg) && //tryAcquire尝试获取 acquireQueued(addWaiter(Node.EXCLUSIVE), arg)) selfInterrupt(); } 进入tryA

2021-03-01 19:19:36 542 5

Anaconda3-Windows-64.zip

之前下载Anaconda3,解压后无conda.exe。 找了很久,终于找到了!!! 此为正确版本。

2021-09-01

GoogleTranslation.zip

我用的是IDEA 2019.1,亲测可用

2021-03-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除