Java
文章平均质量分 61
java平台笔记
文天大人
聆听爱意是无憾,热爱武汉的妹子
展开
-
Java-为什么重写equals的时候“必须“要重写hashCode
热爱湘鄂的妹子,喜欢江浙的妹子原创 2024-08-08 17:16:54 · 134 阅读 · 0 评论 -
Java-SoftReference与WeakReference
怀念二抱三抱原创 2024-06-11 16:53:24 · 197 阅读 · 0 评论 -
Java-Safe Point(安全点)
我爱武汉黄陂的妹子原创 2024-02-29 16:29:51 · 746 阅读 · 0 评论 -
Java-Buffer直接缓冲区与非直接缓冲区/ByteBuffer/通道
我爱武汉汉阳的妹子原创 2024-02-27 10:48:54 · 854 阅读 · 0 评论 -
Java-HashMap如何找落点
我爱武汉汉阳的妹子原创 2024-01-25 13:10:26 · 909 阅读 · 3 评论 -
Java-伪共享
我爱武汉汉阳的妹子原创 2024-01-08 15:37:17 · 871 阅读 · 0 评论 -
Java-虚拟机-逃逸分析/栈上分配/标量替换/内存泄漏
我爱武汉汉阳的妹子原创 2024-01-05 13:36:44 · 419 阅读 · 0 评论 -
Java-虚拟机-栈的保护页
我爱武汉汉阳的妹子原创 2024-01-04 10:13:57 · 887 阅读 · 0 评论 -
FastJson语法笔记
怀念二抱三抱,热爱汉阳的妹子原创 2023-11-02 18:30:21 · 124 阅读 · 0 评论 -
Java枚举类模板
怀念二抱三抱原创 2023-01-03 17:21:09 · 373 阅读 · 0 评论 -
Java-java.io.BufferedInputStream
由下面的代码可以得知,这个类的缓冲区默认情况下最大值是8192个字节,也就是说默认情况下能存储8192个字节public class BufferedInputStream extends FilterInputStream { private static int DEFAULT_BUFFER_SIZE = 8192;mark方法mark(N);:标记当前读取的位置到当前读取的位置+N的这一段数据,如果N小于8192,则将N=8192,所以下面两个代码效果是完全一样的mark(666);/原创 2021-10-14 17:45:56 · 447 阅读 · 0 评论 -
Java-虚拟机-终结方法finalize
IA-32:intel architectureIA-32:分段内存模型平坦模型分页虚拟内存管理系统管理模式实模式保护模式虚拟8086模式===安腾 intel itanium架构 IA-64x86-64也叫amd64ia-32e, intel 64原创 2021-09-24 16:41:19 · 136 阅读 · 0 评论 -
Java-虚拟机-启动参数及调优
怀念二抱三抱原创 2021-03-01 10:20:05 · 1435 阅读 · 1 评论 -
Java-虚拟机-垃圾收集器/垃圾收集算法/GCROOT根
怀念二抱三抱原创 2021-02-10 09:58:08 · 705 阅读 · 1 评论 -
Java-虚拟机-执行引擎/解释器/编译
执行引擎的运行模式1.解释模式:翻译一行java代码(将java代码翻译成机器码),就运行一行java代码2.编译模式:先将所有的java代码都翻译成机器码,然后再运行3.混合模式:正常情况下执行解释模式,对于一些常用的代码段,则采用编译模式,将其机器码缓存到jvm内部jvm默认采用混合模式,为什么不用编译模式?唯一的原因就是机器码要比class文件中的java代码至少大10倍以上,得不偿失...原创 2021-02-08 17:56:12 · 246 阅读 · 0 评论 -
Java-虚拟机-类加载(装载连接初始化)
我爱武汉汉阳的妹子原创 2021-02-08 15:47:21 · 338 阅读 · 1 评论 -
Java-java.util.concurrent.locks.AbstractQueuedSynchronizer
这个类简称AQS,如果我们要实现的功能是有获取和释放这两个操作,并且获取操作总是能够阻塞,那么对于该功能的实现,我们需要继承AbstractQueuedSynchronizer(AQS),AQS中有一个属性叫state以及操作该属性的三个方法,如下private volatile int state;protected final int getState() { return state;}protected final void setState(int newState) {原创 2020-12-22 20:57:15 · 3154 阅读 · 0 评论 -
Java-java.util.concurrent.LinkedBlockingQueue
怀念二抱三抱原创 2020-11-11 20:54:12 · 272 阅读 · 0 评论 -
Java-GuardedBlocks与BusyWaitting忙等待
我爱武汉汉阳的妹子原创 2020-11-11 20:53:14 · 497 阅读 · 0 评论 -
Java-ReentrantLock-NonfairSync/FairSync
本文介绍ReentrantLock的内部类NonfairSync在了解ReentrantLock原理之前,请必须要了解java的CAS,也叫compare and swap,既比较和修改,java中,在java.util.concurrent.atomic包下的基本都是实现了CAS,它们的方法命名规则基本都以compareAnd开头,例如AtomicReference类中的compareAndSet方法,不过在java中CAS的最底层实现是通过Unsafe类,而Unsafe类的compareAndSwap原创 2020-11-02 16:12:58 · 919 阅读 · 0 评论 -
Java-LockSupport
一:park在T1线程中,代码A处调用park方法,线程T1将会挂起二:unpark在任意线程中,再次调用unpark方法,传入参数T1,代码将从代码A处继续执行public static void main(String[] args) throws InterruptedException { Object o = new Object(); Thread t1 = new Thread(new Runnable() { @Override public void run()原创 2020-11-02 15:25:18 · 96 阅读 · 0 评论 -
Java-修改class文件
JDK的lib文件夹下,有个叫tools.jar的包这里面有个类,该类全限定名是:com.sun.tools.javac.Main当执行javac命令的时候,实际执行的就是该类接下来找到com.sun.tools.javac.JavaCompiler类,该类中有个方法叫genCode此处代码会调用com.sun.tools.javac.jvm.ClassWriter.writeClass方法生成.class文件,此处为核心【注意:不同版本的JDK很可能目录结构有很大差异,不同版本指的不一定是大版本原创 2020-09-02 19:05:55 · 1768 阅读 · 2 评论 -
Java-部分API示例(JDBC/二维码/邮件/图片验证码)
怀念二抱三抱原创 2020-08-12 14:33:11 · 432 阅读 · 0 评论 -
Java-ArrayList.Itr类(Iterator的实现)
本文介绍java迭代器的实现之一,ArrayList类的迭代器实现本文示例代码如下public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("A"); list.add("B"); list.add("C"); list.add("D"); Iterator<String> iterator = list.iterator()原创 2020-07-15 17:56:09 · 583 阅读 · 0 评论 -
Java-创建图片验证码descriptor
public static void main(String[] args) throws Exception{ //这里读者自己定义随机 ,通常都是定义一个0-9,A-Z的字符串 //然后从字符串里随机的拿出五个字符即可,我这里是写死的"AB3DF" String s = "AB3DF"; //创建画板原创 2016-01-19 17:11:02 · 399 阅读 · 0 评论 -
Java-获取本地都有哪些字体
从别人那里抄来的public static void main(String[] args) throws Exception{ GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); String[] fontList = ge.getAvailab原创 2016-01-19 16:12:05 · 1183 阅读 · 1 评论 -
Java-虚拟机-常量池的表现方式
public static void main(String args []){ Logger log = Logger.getLogger("名字随便起"); log.info("安妮的小熊在哪里我怎么会知道?");//写法1 log.log(Level.INFO, "世间万物皆系于一箭之上");//写法2 }//可用静态工厂原创 2015-12-17 16:39:40 · 914 阅读 · 0 评论 -
Java-构建器模式(Buider模式)
怀念二抱三抱原创 2015-12-09 09:23:30 · 417 阅读 · 1 评论 -
Java-ServiceLoader类
怀念二抱三抱原创 2015-10-08 10:58:53 · 999 阅读 · 0 评论 -
Java-图片裁剪
public static void main(String[] args) throws Exception { InputStream fis = new FileInputStream("C:\\要裁剪的图.jpg"); ImageReader reader = (ImageReader) ImageIO.getImageReadersBy原创 2015-10-07 14:32:52 · 552 阅读 · 0 评论 -
Java-图片加水印-与图片缩放
public static void main(String[] args) throws Exception {// 创建文件对象File srcFile = new File("C:\\Users\\alibaba\\Desktop\\image\\原图.jpg");// 将文件对象变成图片对象Image src = ImageIO.read(srcFile);int width=sr原创 2015-10-05 16:42:57 · 815 阅读 · 0 评论 -
Java-虚拟机-栈帧
我爱武汉汉阳的妹子原创 2016-01-19 13:51:38 · 459 阅读 · 0 评论 -
Java-虚拟机-局部变量表
怀念二抱三抱原创 2021-04-19 15:05:00 · 934 阅读 · 1 评论 -
Java-发送邮件descriptor
.原创 2016-06-24 11:35:37 · 457 阅读 · 0 评论 -
Java-压缩指针compressedOops
怀念二抱三抱原创 2017-01-09 18:23:09 · 541 阅读 · 1 评论 -
Java-虚拟机-堆的内存规划/新生代/老年代/卡表
怀念二抱三抱原创 2016-12-04 14:38:39 · 920 阅读 · 2 评论 -
Java-volatile是如何实现的
怀念二抱三抱原创 2015-09-26 11:46:06 · 2411 阅读 · 2 评论