小小默:进无止境

QQ:1274654983 欢迎交流~~

Summary!Java的接口、类、属性、方法的修饰符

【1】接口的修饰符 接口的修饰符只有:public。 接口中的方法都为抽象方法,子类必须实现这些方法。 【2】类的修饰符 类的修饰符分为:可访问控制符和非访问控制符两种。 可访问控制符是:公共类修饰符 public 非访问控制符有:抽象类修饰符 abstract ;最终类修饰符...

2018-08-30 17:32:46

阅读数 358

评论数 0

Release!Class文件结构详解

【1】JVM 的“无关性” Java具有平台无关性,也就是任何操作系统都能运行Java代码。之所以能实现这一点,是因为Java运行在虚拟机上,不同的操作系统都拥有各自的Java虚拟机,因此Java能实现“一次编写,处处运行”。 而JVM不仅具有平台无关性,还具有语言无关性。 平台无关性是指不...

2018-08-30 16:05:14

阅读数 206

评论数 0

Very Heavy ! Java虚拟机的垃圾回收处理与垃圾收集算法

Java虚拟机的内存模型分为五个部分,分别是程序计数器、Java虚拟机栈、本地方法栈、堆和方法区。 这五个区域既然是存储空间,那么为了避免Java虚拟机在运行期间内存存满的情况,就必须得有一个垃圾收集者的角色,不定期地回收一些无效内存,以保障Java虚拟机能够健康地持续运行。 这个垃圾收集者就...

2018-08-28 15:12:03

阅读数 167

评论数 0

Come on ! Java对象内存分配与回收策略

Java所承诺的自动内存管理主要是针对对象内存的回收和对象内存的分配。 在Java虚拟机的五块内存空间中,程序计数器、Java虚拟机栈、本地方法栈内存的分配和回收都具有确定性。一般都在编译阶段就能确定下来需要分配的内存大小,并且由于都是线程私有,因此它们的内存空间都随着线程的创建而创建,线程的结...

2018-08-28 09:18:47

阅读数 219

评论数 0

细探究,Java对象创建过程和访问的奥秘

【1】对象创建的过程 当虚拟机遇到一条含有“new”的指令时,会进行一系列对象创建的操作。 ① 检查常量池中是否有即将要创建的这个对象所属的类的符号引用 若常量池中没有这个类的符号引用,说明这个类还没有被定义,抛出ClassNotFoundException。 若常量池中有这个类的符号引用...

2018-08-27 17:36:37

阅读数 173

评论数 0

认真学,JVM内存模型(运行时数据区)

Java虚拟机(Java Virtual Machine=JVM)的内存空间分为五个部分,分别是: 程序计数器 Java虚拟机栈 本地方法栈 堆 方法区 【1】程序计数器 ① 什么是程序计数器 程序计数器是一块较小的内存空间,可以把它看作当前线程正在执行的字节码的行号指示器。也就是...

2018-08-27 11:07:57

阅读数 904

评论数 1

CGLIB动态代理使用与原理详解

JDK中提供的生成动态代理类的机制有个鲜明的特点是:某个类必须有实现的接口,而生成的代理类也只能代理某个类接口定义的方法。 那么如果一个类没有实现接口怎么办呢? 这就有CGLIB的诞生了,前面说的JDK的动态代理的实现方式是实现相关的接口成为接口的实现类,那么我们自然可以想到用继承的方式实现相...

2018-08-26 11:26:49

阅读数 1228

评论数 1

Java中动态代理使用与原理详解

动态代理是指客户通过代理类来调用其它对象的方法,并且是在程序运行时根据需要动态创建目标类的代理对象。 动态代理使用场合: 调试 远程方法调用 代理设计模式的原理: 使用一个代理将对象包装起来, 然后用该代理对象取代原始对象. 任何对原始对象的调用都要通过代理. 代理对象决定是否以及何...

2018-08-22 15:31:46

阅读数 376

评论数 0

Redis - 浅谈JedisPool

想要操作redis,就需要与redis建立连接。就像操作MySQL一样,需要首先拿到数据库链接。 进而,类似于MySQL的DataSource,ActiveMQ的pool,redis也提供了自己的pool–JedisPool。这些”池”理念是相通的,把你从繁琐的手动获取释放链接解放出来,减少了资...

2018-08-21 11:55:10

阅读数 702

评论数 0

Redis - 主从复制那些事与高可用sentinel

Replication,也就是我们所说的主从复制,主机数据更新后根据配置和策略, 自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主。 主要业务场景 :读写分离和容灾恢复。 Redis的Replication往往是配从(库)不配主(库)。 【1】R...

2018-08-19 17:46:00

阅读数 292

评论数 0

Java数值类型提升机制

【1】数值提升 数字类型提升机制被用于算术运算符上,通常使用场景为: 同一类型转换 有时可以使代码更清晰。 拓宽原始类型转换 指byte、short、int、long、float、double由低向高转换。 自动拆箱转换 基础类型引用类的拆箱方法,如r.intValue()。 ...

2018-08-19 12:59:02

阅读数 220

评论数 0

Java中你所轻视的三目运算符

【1】一个小坑 三目运算符是我们经常在代码中使用的,a= (b==null?0:1); 这样一行代码可以代替一个 if-else,可以使代码变得清爽易读。但是,三目运算符也是有一定的语言规范的。在运用不恰当的时候会导致意想不到的问题。 对于条件表达式b?x:y,先计算条件b,然后进行判断。如果...

2018-08-19 12:17:18

阅读数 1156

评论数 0

Redis - 发布订阅机制详解

【1】是什么 进程间的一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。 联想诸多消息中间件的发布订阅模式,但是Redis大多用来作为基于内存的分布式缓存,企业中消息中间件多用ActiveMQ、RibbitMQ等。 下图展示了频道channel1,以及订阅这个频道的三个客...

2018-08-16 17:15:12

阅读数 1026

评论数 0

Redis - 事务操作与详解

Redis事务本质是本质是一组命令的集合,可以一次执行多个命令。 一个事务中的所有命令都会序列化,按顺序地串行化执行而不会被其它命令插入,不许加塞。 Redis事务通常使用在一个队列中,一次性、顺序性、排他性的执行一系列命令。 Redis命令官网:http://redisdoc.com/ ...

2018-08-14 16:29:11

阅读数 583

评论数 0

SpringBoot使用Maven建立多模块工程(二)

项目多模块似乎已经很常见了,这里分享一下多模块构建过程。 环境:idea+SpringBoot2.0。 目标:父工程(打包pom),子工程(api-jar包,让web工程依赖)、子工程(hh-pojo-jar,让web工程依赖)以及web主工程(打war包)。 基本上本篇博客是在上一篇博文的...

2018-08-10 17:58:20

阅读数 369

评论数 0

SpringBoot使用Maven建立多模块工程(一)

项目多模块似乎已经很常见了,这里分享一下多模块构建过程。 环境:idea+SpringBoot2.0。 目标:父工程(打包pom),子工程(api-jar包,让web工程依赖)以及web主工程(打war包)。 【1】构建父工程 步骤:new-project-maven 这里有两点,工...

2018-08-10 15:57:08

阅读数 1748

评论数 0

SpringBoot2.0整合Redis

【1】pom依赖 添加redis依赖如下: <!--整合redis--> <dependency> <groupId&amp...

2018-08-09 12:07:10

阅读数 1603

评论数 0

SpringBoot2.0整合ActiveMQ

【1】pom文件 添加ActiveMQ依赖: <!--整合ActiveMQ--> <dependency> <groupId&a...

2018-08-09 11:54:07

阅读数 1131

评论数 2

SpringBoot2.0整合Freemarker

这个暂时没有遇到坑,直接上码实战。 【1】pom文件 添加freemarker依赖如下: <!--整合freemarker--> <dependency> &a...

2018-08-09 11:21:52

阅读数 1602

评论数 0

SpringBoot引入第三方jar包或本地jar包的处理方式

在项目开发中不可避免会遇到引入第三方jar包的情况,这些第三方jar是在Maven仓库中没有的。 有两种处理方式: 将jar包安装在本地maven库(本地私服) 将jar包放入项目目录中。 这里主要讲述第二种方式,而第二种方式又分两种情况:项目打jar包和项目打war包。 ① 项目...

2018-08-08 12:03:54

阅读数 2561

评论数 0

提示
确定要删除当前文章?
取消 删除