
java
清澈见底-66
此人很懒
展开
-
javah生成头文件
javah -classpath . -jni com.xueersi.matrix.native_cap.Native_Capture原创 2021-01-06 16:24:03 · 260 阅读 · 0 评论 -
生成java方法签名
原创 2021-01-06 11:43:57 · 479 阅读 · 0 评论 -
ThreadLocal理解
ThreadLocal 线程副本变量管理器Thread 创建后每个Thread中都有一个ThreadLocalMap实例key为threadlocal对象弱引用包装,value为存储的值get和set的的时候 会通过Thread的currentThread 得到当前线程,然后得到当前线程的map,set和get 都是操作当前线程的map。因为key是弱引用包装所以gc时key被回收,但是value因为被线程强引用所以存在内存泄漏的可能性...原创 2020-08-09 17:44:44 · 171 阅读 · 0 评论 -
Java内存模型
在并发编程中,内存的可见性基本上决定了,你的代码是否存在线程竞争,是否存在静态条件。Java 内存分为两大类: 共享变量:实例域(全局变量),静态域(全局静态变量),数组元素;这些元素处于堆内存中,属于线程间共享部分,存在线程安全问题。 局部变量:方法内部的局部变量,方法参数,异常处理器参数。不在线程间共享,所以不存在线程静态条件,所以时线程安全的。 ...原创 2018-08-06 18:32:55 · 217 阅读 · 0 评论 -
Java 中缀转后缀
public class Test { /** * 一:非运算符直接输出 * 二:遇到左括号直接入栈 * 三:栈顶符号优先级高于或等于即将入栈的操作符,则将高于和等于的操作符出栈,然后再入栈 * 四:遇右括号,输出栈中的运算符,直到遇到第一个左括号,左括号出栈抛弃 * :乘除优先级相等》 加减优先级相等 * * 中缀转后缀实例,支持10以内加减法 * *原创 2017-06-15 14:38:27 · 469 阅读 · 0 评论 -
Java 动态代理
1、InvocationHandler实现类,只能对接口进行代理;2、被代理接口即interface3、被代理接口的实现类第1步:定义interfacepublic interface IText{public String test(String arg);}第2步:实现接口public class ImplText implements IText{pu原创 2017-06-23 13:37:05 · 281 阅读 · 0 评论 -
Java 线程锁总结
Java 线程同步: 1、volatile关键字: 被修饰的变量变成原子操作,遵循happend-before原则。 2、synchronize关键字: 修饰实例方法:主要是对类的对象进行锁控制。 修饰静态方法:主要是对Class对象进行锁控制 同步代码块: synchronize(object){原创 2017-06-08 17:27:03 · 496 阅读 · 0 评论 -
深入理解Java中为什么内部类可以访问外部类的成员
内部类简介转载自http://blog.youkuaiyun.com/zhangjg_blog/article/details/20000769虽然Java是一门相对比较简单的编程语言,但是对于初学者, 还是有很多东西感觉云里雾里, 理解的不是很清晰。内部类就是一个经常让初学者感到迷惑的特性。 即使现在我自认为Java学的不错了, 但是依然不是很清楚。其中一个疑惑就是为什么内部类对象可以访问外转载 2017-06-16 16:33:07 · 296 阅读 · 0 评论 -
java 线程监视器
原创 2017-01-10 15:59:37 · 574 阅读 · 0 评论 -
Java 加载class和创建对象的三种形式
Java加载class主要分为以下三种类型:一、Class cls=Class.forName(“包名.类名”)Object obj=cls.newInstance();创建对象二、ClassLoader clsLoader=new MyClassLoader()Class cls=clsLoader.load("包名.类名")Object obj=cls.newInsta原创 2016-10-25 16:52:59 · 6631 阅读 · 0 评论