随笔分类 -  JAVA基础

摘要:一、注解简介 注解也叫元数据,是JDK1.5版本开始引入的一个特性,用于对代码进行标记说明,可以对包、类、接口、字段、方法参数、局部变量等进行注解修饰 1.1、注解的类型 1、JDK注解和框架注解:JDK本身提供了很多注解比如@Resource、@PostConstruct等;另外常用的框架也提供了 阅读全文
posted @ 2021-04-25 14:37 Lucky帅小武 阅读(1986) 评论(0) 推荐(0)
摘要:一、Hessian序列化用法 1、maven依赖 <dependency> <groupId>com.caucho</groupId> <artifactId>hessian</artifactId> <version>4.0.38</version> </dependency> 2、序列化和反序列 阅读全文
posted @ 2020-12-08 22:45 Lucky帅小武 阅读(3341) 评论(0) 推荐(0)
摘要:前言 Map体系中常用的有HashMap、TreeMap以及线程安全的ConcurrentHashMap、ConcurrentSkipListMap,不同场景可以使用不同的Map实现类,比如单线程无序的可以采用HashMap,需要有序的就可以使用TreeMap,需要线程安全的就可以使用并发包中提供的 阅读全文
posted @ 2020-06-19 00:14 Lucky帅小武 阅读(555) 评论(0) 推荐(0)
摘要:前言 Java集合框架主要分成Collection体系和Map体系,Collection主要存储单列数据,而Map则是存储键值对格式的数据,key相当于是value的索引,key不可以重复,但是value是可以重复的。 和Collection一样,Map接口也有很多类型的子类和实现类,图谱如下图示: 阅读全文
posted @ 2020-06-03 14:05 Lucky帅小武 阅读(626) 评论(0) 推荐(0)
摘要:Java的集合框架是围绕一组标准接口而设计的接口和类的架构,主要涉及的数据结构为:数组、链表、树、哈希表,在这些基本的数据结构上进行扩展演变而衍生出一系列的功能强大的集合框架。 Java的集合主要分成两大派:Collection系和Map系,Collection体系主要存储单列数据,而Map存储的是 阅读全文
posted @ 2020-06-03 09:52 Lucky帅小武 阅读(746) 评论(0) 推荐(0)
摘要:前言: 上篇文章通过源码解析了ArrayList和LinkedList的实现逻辑,但是在多线程的情况下,这两个List实现类都是无法保证线程安全的,所以在JUC中就提供了一种线程安全的List,也就是本文将要解析的CopyOnWriteArrayList CopyOnWriteArrayList从名 阅读全文
posted @ 2020-06-02 21:13 Lucky帅小武 阅读(401) 评论(0) 推荐(0)
摘要:前言 Collection框架中Collection的子类List是用于存放有序、可以重复的数据的结构,本文就通过源码来分析下List的各种实现类是如何实现的。 List的实现主要分成两种类型,数组和链表 数组的特点是:内存存储地址连续,查询效率高,增删效率低,适合场景为顺序存储,查询频繁 链表的特 阅读全文
posted @ 2020-06-01 18:05 Lucky帅小武 阅读(305) 评论(0) 推荐(0)
摘要:一、什么是序列化和反序列化? 序列化:将对象状态信息转化成可以存储或传输的形式的过程(Java中就是将对象转化成字节序列的过程) 反序列化:从存储文件中恢复对象的过程(Java中就是通过字节序列转化成对象的过程) 二、为什么要序列化和反序列化? Java中对象都是存储在内存中,准确地说是JVM的堆或 阅读全文
posted @ 2019-11-13 14:05 Lucky帅小武 阅读(3491) 评论(0) 推荐(1)
摘要:1.HashMap简介(本文是按照JDK1.8进行解析) HashMap位于JDK自带jar包rt.jar的java.util目录下。 HashMap是一个散列表,存储的内容是键值对<key,value>映射。 HashMap继承于AbstractMap,实现了Map、Cloneable、Seria 阅读全文
posted @ 2019-05-09 10:02 Lucky帅小武 阅读(1792) 评论(0) 推荐(0)
摘要:JDK8新特性(2014年初)(LTS版本) 1、Lambda表达式 2、函数式编程 3、接口可以添加默认方法和静态方法,也就是定义不需要实现类实现的方法 4、方法引用 5、重复注解,同一个注解可以使用多次 6、引入Optional来避免空指针 7、引入Streams相关的API 8、引入新的Dat 阅读全文
posted @ 2019-04-26 00:30 Lucky帅小武 阅读(20836) 评论(0) 推荐(2)
摘要:Java中的运算符有以下种类:算术运算符、关系运算符、位运算符、逻辑运算符、赋值运算符、其他的运算符 现在假设定义 int A = 10,B = 5; 一、算术运算符 详细Demo如下: 关于A++和++A的区别的详细解析,可以参考另一篇文章:JAVA基础2 深度解析A++和++A的区别 二、关系运 阅读全文
posted @ 2018-08-11 09:24 Lucky帅小武 阅读(702) 评论(0) 推荐(0)
摘要:我们都知道JAVA中A++和++A在用法上的区别,都是自增,A++是先取值再自增,++A是先自增再取值,那么为什么会是这样的呢? 1.关于A++和++A的区别,下面的来看个例子: 虽然现在我们知道a++是先取值再自增,而++a是先自增再取值,那么它是怎么实现的呢,接下来我们来看下这段代码被JVM编译 阅读全文
posted @ 2018-08-10 14:13 Lucky帅小武 阅读(1346) 评论(0) 推荐(0)
摘要:1.Object简介 众所周知,Object类是Java所有类的万类之源,所有Java类都是继承之Object类,而默认就直接忽略了extends Object这段代码。 2.Object类的源码 话不多说,源码先贴为敬,源码如下: 3.Object类的方法 Object类方法如下 getClass 阅读全文
posted @ 2018-08-09 22:14 Lucky帅小武 阅读(822) 评论(0) 推荐(0)