JavaSE
文章平均质量分 92
三分恶
只能当个全栈维持生活。
展开
-
学编程太枯燥太难怎么办?
学习编程太枯燥,不如打会游戏吧!原创 2022-11-11 09:59:10 · 2278 阅读 · 7 评论 -
你有被代理过吗?讲讲开源框架都在用的代理模式
讲真,有些时候我不想被代理……原创 2022-02-18 20:59:31 · 1981 阅读 · 3 评论 -
面渣逆袭:Java基础五十三问,两万字图文详解,快来看看有没有你不会的
两万字,图文详解五十三道Java基础面试题。基础面试题,答对了没有奖,答错了就凉凉,快来看看有没有你不会的吧!原创 2022-01-24 21:45:41 · 3128 阅读 · 4 评论 -
面试刷算法,这些api不可不知!
刷算法,这些api不可不知!原创 2021-07-16 00:24:20 · 2723 阅读 · 10 评论 -
Java工程师核心书单,阿里大佬看了都说好!
Java核心书单,优中选优。原创 2021-03-14 10:08:22 · 7241 阅读 · 40 评论 -
让Eclipse起飞——这些插件不可不知
Eclipse是很多Java开发者的第一个开发工具,尽管开源的Eclipse在一后起之秀的对比下,显得有些颓势,但是,Eclipse有着丰富的插件支持。选择合适的插件,Eclipse表示:老夫也能飞。原创 2020-12-02 00:12:47 · 1760 阅读 · 2 评论 -
HashMap源码阅读笔记
本文基于jdk1.8HashMap采用 key/value 存储结构,每个key对应唯一的value。在jdk1.7之前,HashMap 的内部存储结构是数组+链表。在jdk1.8中 HashMap的存储结构是 数组+链表+红黑树,提高了效率。红黑树在阅读HashMap源码之前,有必要对红黑树进行一些了解。红黑树的性质红黑树是一种自平衡二叉查找树。红黑树具有如下特性:1、 任何一个节点都有颜色,黑色或者红色2、根节点是黑色的3、 父子节点之间不能出现两个连续的红节点4、任何一.原创 2020-11-01 20:00:51 · 775 阅读 · 1 评论 -
StringBuilder/StringBuffer源码阅读笔记
在 Java String类源码阅读笔记 里学习了String类的源码,StringBuilder、StringBuffer是经常拿来和String类做对比的两个类,可谓是“爱恨纠缠” ,这里我们继续学习这两个类的源码。本文基于jdk1.8。StringBuilder/StringBuffer继承关系StringBuilder、StringBuilder具有相同的继承关系,都继承自AbstractStringBuilder类,实现了CharSequence接口。StringBuilder继承关.原创 2020-09-25 20:49:51 · 515 阅读 · 0 评论 -
Java String类源码阅读笔记
String类可谓是我们开发中使用最多的一个类了。对于它的了解,仅仅限于API的了解是不够的,必须对它的源码进行一定的学习。原创 2020-09-18 22:48:03 · 819 阅读 · 0 评论 -
LinkedList源码阅读笔记
LinkedList是基于双向链表数据结构实现的Java集合原创 2020-08-19 22:33:22 · 921 阅读 · 0 评论 -
CopyOnWriteArrayList源码阅读笔记
ArrayList是开发中使用比较多的集合,它不是线程安全的,CopyOnWriteArrayList就是线程安全版本的ArrayList。CopyOnWriteArrayList同样是通过数组实现,这个类的名字叫“CopyOnWrite ”,它是在写入的时候拷贝数组,对副本进行操作。原创 2020-08-17 22:19:20 · 561 阅读 · 0 评论 -
ArrayList源码阅读笔记
简介ArrayList是基于数组实现的一种列表。ArrayList继承体系如下:图一:ArrayList继承体系ArrayList实现了List, RandomAccess, Cloneable, java.io.Serializable等接口。ArrayList实现了List,提供了基础的添加、删除、遍历等操作。ArrayList实现了RandomAccess,提供了随机访问的能力。ArrayList实现了Cloneable,可以被克隆。ArrayList实现了Ser原创 2020-08-16 12:29:25 · 743 阅读 · 0 评论 -
Java8 Stream
tream 作为 Java 8 的一大亮点,它与 java.io 包里的 InputStream 和 OutputStream 是完全不相关的东西。Java 8 中的 Stream 是对集合(Collection)对象功能的增强,它专注于对集合对象进行各种非常便利、高效的聚合操作(aggregate operation),或者大批量数据操作 (bulk data operation)。Java 8 中出现的 java.util.stream 是一个函数式语言+多核时代综合影响的产物。原创 2020-07-19 21:34:56 · 1892 阅读 · 0 评论 -
Java Lambda表达式
译 原文作者:Jakob Jenkov 原文链接:http://tutorials.jenkov.com/java/lambda-expressions.html文章目录Java Lambdas和单一方法接口将Lambda匹配到接口具有默认方法和静态方法的接口Java Lambda表达式是Java8中的新特性。Java lambda表达式是Java进入函数式编程的第一步。因此,Java lambda表达式是可以单独创建的函数,而无需属于任何类。Jav..原创 2020-07-17 00:15:12 · 620 阅读 · 0 评论 -
Google Gson用法详解
Gson(又称Google Gson)是Google公司发布的一个开放源代码的Java库,主要用途为序列化Java对象为JSON字符串,或反序列化JSON字符串成Java对象。原创 2020-05-31 16:38:19 · 3915 阅读 · 0 评论 -
Jackson用法详解
Jackson 是当前用的比较广泛的,用来序列化和反序列化 json 的 Java 的开源框架。Jackson 社区相对比较活跃,更新速度也比较快, 从 Github 中的统计来看,Jackson 是最流行的 json 解析器之一 。 Spring MVC 的默认 json 解析器便是 Jackson。 Jackson 优点很多。 Jackson 所依赖的 jar 包较少 ,简单易用。与其他 Java 的 json 的框架 Gson 等相比, Jackson 解析大的 json 文件速度比较快;Jack原创 2020-05-23 23:31:11 · 2558 阅读 · 0 评论 -
StringUtils常用方法
文章目录1、截取1.1、根据指定位置截取字符串(1)、指定开始位置(2)、指定起始位置和结束位置1.2、从指定的分隔符截取(1)、从分隔符第一次出现的位置向后截取(2)、从分隔符最后一次出现的位置向后截取日常开发中对字符串的处理是非常常见的,StringUtils工具类是org.apache.commons.lang3包下的工具类,对String类型的操作作了封装,是对Java自带的API...原创 2020-03-20 08:29:33 · 3721 阅读 · 1 评论 -
Java时间格式字符串与Date的相互转化
文章目录将Date转化为格式化字符串时间格式字符串转换为Date将Date转化为格式化字符串将Date转化为格式化字符串是利用SimpleDateFormat类继承自 java.text.DateFormat类的format方法实现的:public final String format(Date date):将日期格式化成日期/时间字符串。 //获取当前时间 ...原创 2020-02-14 17:30:56 · 12220 阅读 · 0 评论 -
Java Review(三十九、类加载机制与反射)
文章目录类的加载、 连接和初始化JVM 和类类的加载类的连接类的初始化类初始化的时机类加载器类加载机制写博客哪有刷逼乎有意思---1写博客哪有刷逼乎有意思---2写博客哪有刷逼乎有意思---3类的加载、 连接和初始化系统可能在第一次使用某个类时加载该类, 也可能采用预加载机制来加载某个类。JVM 和类当调用 java 命令运行某个 Java 程序时, 该命令将会启动一个...原创 2019-12-30 04:37:40 · 2201 阅读 · 2 评论 -
Java Review(三十八、网络编程)
文章目录网络基础IP地址端口域名网络模型常用协议Java 的基本网络支持使用 InetAddressURL、 URLConnection 和 URLPermission网络基础计算机网络是指两台或更多的计算机组成的网络,在同一个网络中,任意两台计算机都可以直接通信,因为所有计算机都需要遵循同一种网络协议。那什么是互联网呢?互联网是网络的网络(internet),即把很多计算机网络连接起来...原创 2019-12-29 22:09:32 · 2297 阅读 · 0 评论 -
Java Review(三十七、多线程)
文章目录线程和进程几乎所有的操作系统都支持同时运行多个任务, 一个任务通常就是一个程序, 每个运行中的程序就是一个进程。 当一个程序运行时, 内部可能包含了多个顺序执行流, 每个顺序执行流就是一个线程。线程和进程几乎所有的操作系统都支持进程的概念, 所有运行中的任务通常对应一个进程( Process)。 当一个程序进入内存运行时, 即变成一个进程。 进程是处于运行过程中的程序, 并且具...原创 2019-12-28 11:37:25 · 4887 阅读 · 5 评论 -
Java Review(三十六、IO)
文章目录File 类访问文件和目录1、访问文件名相关的方法2. 文件检测相关的方法3. 获取常规文件信息4. 文件操作相关的方法5. 目录操作相关的方法文件过滤器IO流概览流的分类1. 输入流和输出流2. 字节流和字符流3. 节点流和处理流流的概念模型Java 的 IO 通过 java.io 包下的类和接口来支持, 在 java.io 包下主要包括输入、 输出两种 10 流, 每种输入、 输出...原创 2019-12-20 23:46:36 · 2537 阅读 · 0 评论 -
Java Review(三十五、注解)
文章目录基本注解JDK 的元注解@Retention@Target@Documented@lnherited自定义注解提取注解信息使用注解实例Demo1Demo2注解能被用来为程序元素( 类、 方法、 成员变量等) 设置元数据。 值得指出的是, 注解不影响程序代码的执行, 无论增加、 删除注解, 代码都始终如一地执行。 如果希望让程序中的注解在运行时起一定的作用, 只有通过某种配套的工具对注...原创 2019-12-12 22:22:00 · 2015 阅读 · 0 评论 -
Java Review(三十四、JDBC)
文章目录原创 2019-12-08 20:31:34 · 1804 阅读 · 0 评论 -
Java Review(三十三、异常处理----补充:断言、日志、调试)
文章目录使用断言使用断言原创 2019-12-01 15:34:07 · 1441 阅读 · 0 评论 -
Java Review(三十二、异常处理)
文章目录异常分类捕捉异常使用 try.. . catch 捕获异常捕获多个异常使用 finally 回收资源抛出异常使用throws声明抛出异常使用 throw 抛出异常自定义异常类异常链Java的异常跟踪栈使用异常机制的技巧1. 异常处理不能代替简单的测试2. 不要过分地细化异常3、利用异常层次结构4、不要压制异常5、在检测错误时,“ 苛刻 ” 要比放任更好6、不要羞于传递异常异常机制己经成...原创 2019-11-25 23:40:28 · 1549 阅读 · 0 评论 -
Java Review(三十一、泛型)
文章目录为什么要使用泛型为什么要使用泛型Java 集合有个缺点一一把一个对象"丢进"集合里之后,集合就会"忘记"这个对象的数据类型 ,当再次取出该对象时 , 该对象的编译类型就变成 了 Object 类型(其运行时类型没变) 。Java 集合之所以被设计成这样,是因为集合 的 设计者不知道我们会用集合来保存什么类型的对象 ,所以他们把集合设计成能保存任何类型 的对象,只要求具有很好的通用性...原创 2019-11-24 11:46:11 · 1402 阅读 · 0 评论 -
Java Review (三十、集合----- 操作集合的工具类: Collections)
文章目录排序操作查找、替换操作同步控制设置不可变集合集合总结Java 提供了一个操作 Set 、 List 和 Map等集合的类:Collections , 该工具类里提供了大量方法对集合元素进行排序、 查询和修改等操作,还提供了将集合对象设置为不可变、对集合对象实现同步控制等方法 。排序操作Collections 提供了如下常用的类方法用于对 List 集合元素进行排序 。void...原创 2019-11-21 23:04:59 · 1042 阅读 · 0 评论 -
Java Review (二十九、集合----- Map 集合)
文章目录HashMap 和 Hashtable 实现类LinkedHashMap 实现类Properties 类SortedMap 接口和 TreeMap 实现类IdentityHashMap 实现类EnumMap 实现类各 Map 实现类的性能分析图一:Map集合结构图Map用于保存具有映射关系的数据,因此 Map 集合里保存着两组值 , 一组值用于保存 Map 里的 key 另外一组...原创 2019-11-14 22:13:34 · 1229 阅读 · 0 评论 -
Java Review (二十八、集合----- Queue 集合)
文章目录PriorityQueue 实现类Deque 接口与 ArrayDeque 实现类队列(Queue)是一种经常使用的集合。Queue实际上是实现了一个先进先出(FIFO:First In First Out)的有序表。它和List的区别在于,List可以在任意位置添加和删除元素,而Queue只有两个操作:把元素添加到队列末尾;从队列头部取出元素。超市的收银台就是一个队列:...原创 2019-11-13 22:10:49 · 928 阅读 · 0 评论 -
Java Review (二十七、集合----- List 集合)
文章目录Java8 改进的List 接口和Listlterator 接口ArrayList 和 Vector 实现类LinkedList 实现类List 集合代表一个元素有序 、可重复的集合,集合中每个元素都有其对应的顺序索引 。 List 集合允许使用重复元素 , 可以通过索引来访问指定位置的集合元素 。 List 集合默认按元素的添加顺序设置元素的索引 。Java8 改进的List 接...原创 2019-11-13 21:31:42 · 1300 阅读 · 0 评论 -
Java Review (二十六、集合----- Set 集合)
文章目录HashSet 类元素比较LinkedHashSet 类TreeSet 类自然排序定制排序EnumSet 类各 Set 实现类的性能分析Set 集合,它类似于一个罐子 , 程序可以依次把多个对象"丢进" Set 集合,而 Set集合通常不能记住元素的添加顺序 。 Set 集合与 Collection 基本相同,没有提供任何额外的方法。实际上 Set 就是 Collection , 只...原创 2019-11-12 23:58:59 · 1413 阅读 · 0 评论 -
Java Review (二十五、集合----- Iterator接口)
Iterator接口 也是 Java 集合框架的成员 , 但它与 Collection 系列 、 Map 系列 的集合不 一样 : Collection系列集合、 Map 系列集合主要用于盛装其他对象,而 Iterator 则主要用于遍历(即迭代访问) Collection集合中的元素, Iterator 对象也被称为迭代器 。Iterator 接口隐藏了各种 Collection实现类的底层...原创 2019-11-07 22:35:00 · 757 阅读 · 0 评论 -
Java Review (二十四、集合-----Collection 接口)
Collection 接口是 List 、 Set 和 Queue 接口的父接口,该接口里定义的方法既可用于操作 Set 集合 ,也可用于操作 List 和 Queue 集合。 Collection 接口里定义了如下操作集合元素的方法:boolean add(Object 0): 该方法用于 向集合里添加 一个元素 。 如果集合对象被添加操作改变了,则返回 true 。boolean a...原创 2019-11-07 22:11:58 · 965 阅读 · 0 评论 -
Java Review (二十三、集合-----概述)
文章目录Java 最初版本只为最常用的数据结构提供了很少的一组类:Vector、 Stack、Hashtable、BitSet 与 Enumeration 接口。随着 Java SE 1.2 的问世,设计人员感到是推出一组功能完善的数据结构的时机了。面对一大堆相互矛盾的设计策略,他们希望让类库规模小且易于学习, 而不希望像 C++ 的“ 标准模版库” (STL) 那样复杂,但却又希望能够吸收...原创 2019-11-07 21:47:22 · 800 阅读 · 0 评论 -
Java Review (二十二、正则表达式)
文章目录创建正则表达式使用正则表达式正则表达式是一个强大的字符串处理工具 ,可以对字符串进行查找、提取、分割、替换等操作 。 String类里也提供了如下几个特殊的方法 :boolean matches(String regex): 判断该宇符串是否匹配指定的正则表达式 。String replaceAll(String regex, String replacement): 将该宇符串...原创 2019-11-05 22:06:39 · 1081 阅读 · 0 评论 -
Java Review (二十一、基础类库----日期、时间类)
文章目录Date 类Calendar 类Java 8 新增的日期、时间包Java 原本提供了 Date 和 Calendar 用于处理日期、时间的类,包括创建日期 、 时间对象,获取系统当前日期、时间等操作 。 但 Date 不仅无法实现国际化 ,而且它对不同属性也使用了前后矛盾的偏移量 ,比如月份与小时都是从 0 开始的,月份中的天数则是从 l 开始的,年又是从 1900 开始的,而jav...原创 2019-11-05 20:34:55 · 1064 阅读 · 0 评论 -
Java Review (二十、基础类库----常用类:Object、String、StringBuffer、StringBuilder、Math)
文章目录Object 类String 、 StringBuffer 和 StringBuilder 类String类StringBuilder、StringBufferMath 类Object 类Object 类是所有类、数组、枚举类的父类 ,也就是说, Java 允许把任何类型的对象赋给 Object 类型的变量 。 当定义一个类时没有使用 extends 关键字为它显式指定父类,则该类默...原创 2019-11-04 23:26:27 · 1059 阅读 · 0 评论 -
Java Review (十九、基础类库----系统相关类)
文章目录System 类Runtime 类Java 程序在不同操作系统上运行时,可能需要取得平台相关的属性,或者调用平台命令来完成特定功能。 Java 提供了 System 类和 Runtime 类来与程序的运行平台进行交互。System 类System 类代表 当 前 Java 程序的运行平台,程序不能创建 System 类的对象, System 类提供了 一 些类变量和类方法,允许直接...原创 2019-11-04 21:48:13 · 847 阅读 · 0 评论 -
Java Review (十八、面向对象----对象与垃圾回收)
文章目录Java运行时数据区域对象在内存中的状态强制垃圾回收finalize 方法对象的软、弱和虚引用1. 强引用 (StrongReference)2. 软引用 (SoftReference)3. 弱引用 (WeakReference)4. 虚引用 (PhantomReference)Java运行时数据区域图一:Java运行时数据区域示意图Java 的垃圾回收是 Java 语言的重要功...原创 2019-11-03 17:49:44 · 1685 阅读 · 0 评论