魔数
摘要:代码中的魔数为没有定义直接使用的常量,该常量分布在代码各个角落,修改时麻烦。 文件的魔数作用为为区分该文件格式,字节码中的魔数为标志文件为class类型的,位于每一个Java class文件的最前面4个子节,固定为0xCAFEBABE
阅读全文
posted @
2020-12-22 15:50
Vinlen
阅读(241)
推荐(0)
类的生命周期
摘要:根据JVM规范,一个Java文件从被加载到被卸载的整个声明过程,总共要经历5个阶段:加载-> 链接(验证,准备,解析)->初始化->使用->卸载。因此也有一些典籍说Java的生命周期包含7个阶段 加载: 将Java类的字节码文件(1*)加载到机器内存中,并在内存中构建出Java类的原型-类模板对象(
阅读全文
posted @
2020-12-22 15:48
Vinlen
阅读(97)
推荐(0)
双亲委派机制与破坏加载
摘要:先在当前加载器的缓存中查找有无目标类,如果有,直接返回。 判断当前加载器的父加载器是否为空,如果不为空则交由父类加载(父类递归进入第一步的操作) 反之,如果当前加载器的父类为空,则交给最顶级的BootstrapClassLoader类来加载 如果以上三步都无法加载,则从上往下挨个加载。如果还是无法加
阅读全文
posted @
2020-12-22 15:46
Vinlen
阅读(263)
推荐(0)
redis应用场景之文章投票设计思路
摘要:公司需要做一个文章投票功能,需求为用户发布的文章可以有一周的投票时间,每个用户只可以给一篇文章投一次票,文章发布超过7天则无法投票。需要对文章进行发布时间排序和投票分值排序以及文章分组。 一开始使用关系型数据库来完成,但后来发现有大量的刷票软件,所以为了用户体验感和数据库安全起见,使用redis来优
阅读全文
posted @
2020-12-04 14:47
Vinlen
阅读(233)
推荐(0)
Redis存储的5种数据结构
摘要:String redis中的String 不是java语言中的String,可以是字符串、整数或者浮点数。 常用操作: 对整个字符串或者字符串其中一部分执行操作,对整数和浮点数进行自增或者自减 List redis中的List不是有序集合,而是一个链表。 常用操作:链表的特点就是可以在链表两端推入或
阅读全文
posted @
2020-12-03 16:33
Vinlen
阅读(732)
推荐(0)