随笔分类 -  Java基础

摘要:JMM:Java内存模型 要想学习volatile,就不得不了解JMM。JVM运行程序的实体是线程,每个线程在被创建时JVM都会为其创建一个自己私有的工作内存。而Java内存模型规定所有的变量都存储在主内存,主内存是共享内存区域,所有线程都可以访问,但是线程对这些变量的操作只能在自己的工作内存中进行 阅读全文
posted @ 2023-01-06 12:12 antidogmatist 阅读(28) 评论(0) 推荐(0) 编辑
摘要:synchronized是java提供线程间同步的重要机制 保证在同一时刻, 被修饰的代码块或方法只会有一个线程执行,以达到保证并发安全的效果 java内存模型: 先通过一个生产者消费者例子来了解如何使用synchronized package com.example.demo; public cl 阅读全文
posted @ 2023-01-05 14:15 antidogmatist 阅读(20) 评论(0) 推荐(0) 编辑
摘要:java.lang.Thread类包含一个静态枚举,它定义了它的潜在状态。在任何给定的时间点内,线程只能处于以下状态之一: NEW – 一个新创建的线程,尚未开始执行 RUNNABLE – 正在运行或准备执行,但它正在等待资源分配 BLOCKED – 等待获取监视器锁以进入或重新进入同步块/方法 W 阅读全文
posted @ 2023-01-04 13:58 antidogmatist 阅读(51) 评论(0) 推荐(0) 编辑
摘要:接口由抽象类衍生,是java开发中很重要的一种思想,方式 类比USB接口,计算机与外部设备的交互,解耦合 接口比抽象类更抽象,不允许有非抽象方法 抽象类只能单继承,接口可以多继承 阅读全文
posted @ 2022-12-15 01:07 antidogmatist 阅读(5) 评论(0) 推荐(0) 编辑
摘要:jdk提供的一个类,是所有类的父类,再java.lang中 Object类中定义了很多方法 hashcode():返回对象的散列码 toString():以字符串的形式返回某个类的实例化对象的信息 getClass() equals() clone() notify() notifyAll() wa 阅读全文
posted @ 2022-12-15 00:46 antidogmatist 阅读(17) 评论(0) 推荐(0) 编辑
摘要:有些类定义的方法,他们的每一个子类都要去重写这个方法,那么就可以将这个方法定义成抽象方法,因为无论如何都要重新实现,就没有必要再父类的方法中去做实现了。 如果一个类中有抽象方法,那么这个类必须定义为抽象类 子类必须重写父类的抽象方法,普通方法可以不重写;但是,如果子类也是个抽象类,就不用实现父类的抽 阅读全文
posted @ 2022-12-15 00:05 antidogmatist 阅读(31) 评论(0) 推荐(0) 编辑
摘要:Synchronized JDK1.4之前 重型锁:mutex,需要进入内核 自旋锁spinlock:cas+死循环,(原子指令)不用进内核,消耗cpu 伪代码: void lock() { while(!cas(state, 0, 1)); 持有者 = 当前线程; } void unlock() 阅读全文
posted @ 2022-12-13 19:01 antidogmatist 编辑
摘要:Java线程池 Java接口 public class ThreadPoolTest { public static void main(String[] args) { ExecutorService e1 = Executors.newSingleThreadPool(); ExecutorSe 阅读全文
posted @ 2022-12-07 21:32 antidogmatist 阅读(42) 评论(0) 推荐(0) 编辑
摘要:1. Double包装类 Double d1 = 9.1000001; Double d2 = 9.1; if (d1.compareTo(d2) == 0) { System.out.println("d1 = d2"); } else if (d1.compareTo(d2) < 0) { Sy 阅读全文
posted @ 2022-11-21 14:33 antidogmatist 阅读(706) 评论(0) 推荐(0) 编辑
摘要:Java泛型 简介 在代码中发现了一个没见过没用过的写法,借此复习一下泛型。 public static <T> BaseResponseVo.BaseResponseVoBuilder<T> builder() { return new BaseResponseVo.BaseResponseVoB 阅读全文
posted @ 2022-11-14 10:24 antidogmatist 阅读(173) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示