java8
mywaya2333
这个作者很懒,什么都没留下…
展开
-
理解 Object 类和 Class 类
class原创 2023-01-16 22:03:30 · 153 阅读 · 0 评论 -
局部性原理
計算機原理原创 2022-11-28 22:29:16 · 103 阅读 · 0 评论 -
加解密流程f
fed原创 2022-03-13 22:05:49 · 316 阅读 · 0 评论 -
postman中 form-data、x-www-form-urlencoded、raw、binary的区别
原文地址:postman中 form-data、x-www-form-urlencoded、raw、binary的区别_wangjun5159的专栏-CSDN博客_postman x-www-form-urlencoded1、form-data: 就是http请求中的multipart/form-data,它会将表单的数据处理为一条消息,以标签为单元,用分隔符分开。既可以上传键值对,也可以上传文件。当上传的字段是文件时,会有Content-Type来说明文件类型...转载 2022-03-07 21:18:21 · 1805 阅读 · 0 评论 -
ES核心概念
近实时(NRT) 写入数据时,内部在分词、录入索引,一般过1秒左右才会被搜索到 ES搜索时,搜索和分析数据基本秒级出结果 集群(Cluster)包含一个或者多个启动着ES的机器群,同一网络下、集合一样的多个ES实例 自动组成集群,自动分片 等行为节点(Node)每个ES实例称为一个节点。节点名称可以手动设置,默认自动分配。索引(Index)包含一堆有相似结构的文档数据。相当于数据库(也相当于表)索引创建规则: 仅限小写字母 不能包含\、/、 *、?原创 2022-02-17 16:07:00 · 1618 阅读 · 0 评论 -
java元注解
注解通过反射获取。首先可以通过 Class 对象的 isAnnotationPresent() 方法判断它是否应用了 某个注解 public boolean isAnnotationPresent(Class annotationClass) {}获取注解 然后通过 getAnnotation() 方法来获取 Annotation 对象。 public A getAnnotation(Class annotationClass) {} 或者是 getAnnotations() 方法。 public A原创 2022-02-12 17:26:45 · 65 阅读 · 0 评论 -
手写线程池
就绪队列public interface RunnableQueue { // 当有新任务进来的时候首先会offer到队列中 void offer(Runnable runnable); // 工作线程通过take方式获取Runnable Runnable take() throws InterruptedException; // 获取任务队列中的任务数量 int size();}public interface De...原创 2022-02-12 10:19:36 · 130 阅读 · 0 评论 -
垃圾收集算法
标记 - 清除标记要回收的对象,然后清除。复制将内存划分为大小相等的两块,每次只使用其中一块,当这一块内存用完了就将还存活的对象 复制到另一块上面,然后再把使用过的内存空间进行一次清理。...原创 2022-02-09 11:41:39 · 44 阅读 · 0 评论 -
ConcurrentHashMap分析
ConcurrentHashMap 和 HashMap 实现上类似,最主要的差别是 ConcurrentHashMap 采 用了分段锁(Segment),每个分段锁维护着几个桶(HashEntry),多个线程可以同时访问 不同分段锁上的桶,从而使其并发度更高(并发度就是 Segment 的个数)JDK 1.7 使用分段锁机制来实现并发更新操作,核心类为 Segment,它继承自重入锁 ReentrantLock,并发度与 Segment 数量相等。 JDK 1.8 使用了 CAS 操作来支持更.原创 2022-02-08 20:57:39 · 53 阅读 · 0 评论 -
HashMap的put操作
HashMap 允许插入键为 null 的键值对。但是因为无法调用 null 的 hashCode() 方法,也就 无法确定该键值对的桶下标,只能通过强制指定一个桶下标来存放。HashMap 使用第 0 个桶 存放键为 null 的键值对。...原创 2022-02-08 20:46:44 · 281 阅读 · 0 评论 -
ArrayList 和LinkedList区别
ArrayList 基于动态数组实现,LinkedList 基于双向链表实现;ArrayList 支持随机访问,LinkedList 不支持;LinkedList 在任意位置添加删除元素更快。原创 2022-02-08 20:42:59 · 414 阅读 · 0 评论 -
抽象类与接口区别
从使用上来看,一个类可以实现多个接口,但是不能继承多个抽象类。接口的字段只能是 static 和 final 类型的,而抽象类的字段没有这种限制。接口的成员只能是 public 的,而抽象类的成员可以有多种访问权限。...原创 2022-02-08 16:54:30 · 43 阅读 · 0 评论 -
java异常
throwable 可以用来表示任何可以作为异常抛出的类,分为两种: Error 和 Exception。其 中 Error 用来表示 JVM 无法处理的错误原创 2022-02-08 16:39:34 · 40 阅读 · 0 评论 -
Static
1. 静态变量 静态变量:又称为类变量,也就是说这个变量属于类的,类所有的实例都共享静态变量, 可以直接通过类名来访问它。静态变量在内存中只存在一份。 实例变量:每创建一个实例就会产生一个实例变量,它与该实例同生共死。2. 静态方法 静态方法在类加载的时候就存在了,它不依赖于任何实例。所以静态方法必须有实现,也就是 说它不能是抽象方法。只能访问所属类的静态字段和静态方法,方法中不能有 this 和 super 关键字。...原创 2022-02-08 16:31:54 · 167 阅读 · 0 评论 -
常用的Stream流
Stream也是支持类似集合的遍历和匹配元素的,只是Stream中的元素是以Optional类型存在的。Stream的遍历、匹配非常简单ublic static void test2() { //筛选出Integer集合中大于7的元素,并打印出来 List<Integer> list = Arrays.asList(6, 7, 3, 8, 1, 2, 9); Stream<Integer> stream = list.stream(); st原创 2022-01-19 11:56:04 · 238 阅读 · 0 评论 -
lamda遍历
ArrayList<Integer> list = new ArrayList<>();Collections.addAll(list, 1,2,3,4,5);//lambda表达式 方法引用list.forEach(System.out::println);list.forEach(element -> { if (element % 2 == 0) { System.out.println(element); }});Arr.原创 2022-01-19 11:42:54 · 470 阅读 · 0 评论 -
Lambda表达式
Lambda简介 Lambda 表达式是 JDK8 的一个新特性,可以取代大部分的匿名内部类,写出更优雅的 Java 代码,尤其在集合的遍历和其他集合操作中,可以极大地优化代码结构。JDK 也提供了大量的内置函数式接口供我们使用,使得 Lambda 表达式的运用更加方便、高效。 对接口的要求 虽然使用 Lambda 表达式可以对某些接口进行简单的实现,但并不是所有的接口都可以使用 Lambda 表达式来实现。Lambda 规定接口中只能有一个需要被实现的方法,不是规定接口中只能有一个方..原创 2022-01-19 11:40:28 · 43 阅读 · 0 评论