随笔分类 -  Java基础

摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot ###基本介绍 1. 不允许重复(底层是HashMap,用key储存元素,value统一都是 PRESENT),可以为null,无顺序 2. HashSet就是为了提高查找效 阅读全文
posted @ 2019-09-17 15:01 LittleDonkey 阅读(1506) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot ###基本介绍 Linkedlist基于链表的动态数组(双向链表): 可以被当作堆栈(后进先出)、队列(先进先出)或双端队列进行操作。 数据添加删除效率高,只需要改变指针指向 阅读全文
posted @ 2019-09-17 14:42 LittleDonkey 阅读(502) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot ###基本介绍 ArrayList: 支持null元素、有顺序、元素可以重复。 可以动态增长和缩减的索引序列,基于数组实现的List类(查询效率高,而在插入删除性能下降很多( 阅读全文
posted @ 2019-09-17 11:59 LittleDonkey 阅读(288) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot ###基本介绍 1. 用于存储Key-Value键值对的集合(每一个键值对也叫做一个Entry)(无顺序)。 2. 根据键的hashCode值存储数据,大多数情况下可以直接定 阅读全文
posted @ 2019-09-16 20:38 LittleDonkey 阅读(480) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot equal Object: public static boolean equals(Object a, Object b) { return (a == b) || (a 阅读全文
posted @ 2019-09-16 16:36 LittleDonkey 阅读(160) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot String String对象不可变,当对象创建完毕之后,如果内容改变则会创建一个新的String对象,返回到原地址中。 不可变优点: 多线程安全。 节省空间,提高效率。 源 阅读全文
posted @ 2019-09-16 13:39 LittleDonkey 阅读(309) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot ###堆参数设置 -XX:+PrintGC 使用这个参数,虚拟机启动后,只要遇到GC就会打印日志 -XX:+PrintGCDetails 可以查看详细信息,包括各个区的情况 阅读全文
posted @ 2019-09-15 14:48 LittleDonkey 阅读(3452) 评论(0) 推荐(1)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot GC Roots 虚拟机栈(栈帧中的本地变量表)中引用的对象 方法区中的类静态属性引用的对象 方法区中的常量引用的对象 原生方法栈(Native Method Stack)中 阅读全文
posted @ 2019-09-15 10:43 LittleDonkey 阅读(611) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot ###类加载器 类加载器就是根据指定全限定名称将class文件加载到JVM内存,转为Class对象 启动类加载器(Bootstrap ClassLoader): 由C++语言 阅读全文
posted @ 2019-09-14 20:09 LittleDonkey 阅读(195) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot Java中的常量池 Java常量池实际上分为两种形态:静态常量池和运行时常量池 常量池是为了避免频繁的创建和销毁对象而影响系统性能,其实现了对象的共享。 静态常量池: 静态常 阅读全文
posted @ 2019-09-14 18:10 LittleDonkey 阅读(1278) 评论(0) 推荐(2)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot Java Socket底层采用TCP/IP协议通信,通信细节被封装,我们仅仅需要指定IP、端口,便能轻易地创建TCP或UDP连接,进行网络通信。 TCP 与 UDP TCP是 阅读全文
posted @ 2019-09-10 16:00 LittleDonkey 阅读(313) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot AIO(Asynchronous Input and Output) 异步IO则采用“订阅-通知”模式: 即应用程序向操作系统注册IO监听,然后继续做自己的事情。 当操作系统 阅读全文
posted @ 2019-09-09 19:27 LittleDonkey 阅读(2046) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot ###同步非阻塞 NIO之所以是同步,是因为它的accept read write方法的内核I/O操作都会阻塞当前线程 IO模型 | IO | NIO :-:|:-:|:-: 阅读全文
posted @ 2019-09-07 11:51 LittleDonkey 阅读(2015) 评论(0) 推荐(1)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 调用者主动等待调用的结果 ###简介 早期的jdk中,采用BIO通信模式: 通常有一个acceptor(消费者) 去负责监听客户端的连接。 它接收到客户端的连接请求之后为每个 阅读全文
posted @ 2019-09-07 10:17 LittleDonkey 阅读(841) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot BIO NIO AIO BIO,同步阻塞式IO,简单理解:一个连接一个线程 NIO,同步非阻塞IO,简单理解:一个请求一个线程 AIO,异步非阻塞IO,简单理解:一个有效请求 阅读全文
posted @ 2019-09-07 09:56 LittleDonkey 阅读(895) 评论(0) 推荐(2)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot IO操作 IO分两阶段(一旦拿到数据后就变成了数据操作,不再是IO): 1.数据准备阶段 2.内核空间复制数据到用户进程缓冲区(用户空间)阶段 在操作系统中,程序运行的空间分 阅读全文
posted @ 2019-09-07 09:38 LittleDonkey 阅读(40303) 评论(15) 推荐(39)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot jvm虚拟内存分布 程序计数器(PC寄存器)(线程私有): 每个线程启动的时候,都会创建一个PC(Program Counter,程序计数器)寄存器。 PC寄存器的内容总是指 阅读全文
posted @ 2019-09-04 09:13 LittleDonkey 阅读(832) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot 一个类从加载到内存开始,一直到被卸载结束,它的整个生命周期包括加载、链接(验证、准备、解析)、初始化、使用、卸载阶段 ###类初始化条件 1. 遇到new、putstatic 阅读全文
posted @ 2019-09-03 22:44 LittleDonkey 阅读(329) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot ###基本数据类型与包装类 基本数据类型 | 包装类型 :-:|:-: byte | Byte boolean | Boolean short | Short char | 阅读全文
posted @ 2019-09-03 21:04 LittleDonkey 阅读(598) 评论(0) 推荐(0)
摘要:欢迎光临我的博客[http://poetize.cn],前端使用Vue2,聊天室使用Vue3,后台使用Spring Boot ###类初始化的条件 一个类要创建实例,需要先加载进内存并初始化 main方法所在的类,需要先加载进内存并初始化 静态内部类和非静态内部类一样,都是在被调用时才会被加载并初始 阅读全文
posted @ 2019-09-03 20:12 LittleDonkey 阅读(935) 评论(0) 推荐(0)