摘要:
一、问题描述 今天在执行单元测试时遇到了一个NoSuchMethodError错误,完整的报错信息如下: ... Caused by: javax.validation.ValidationException: HV000183: Unable to initialize 'javax.el.Exp 阅读全文
摘要:
事情是这样的,最近想要考一个高级软件资格证书,于是二话不说买了“信息系统项目管理师”相关资料就开始学起来了。 教材一到手,刚翻开第一页读了个序言,曾经熟悉的味道就开始直冲天灵盖:和大学时的众多教材一样,这本教材也是相当的“不说人话”。 好像我们国内的教材都这样,就没打算让人看懂,这本教材也不例外。 阅读全文
摘要:
规则引擎能干什么 规则引擎的工作方式有点像if-else,它允许你设置一些条件和动作,然后在程序运行时判断某些动作该不该执行。 easy-rules是一款轻量级的java规则引擎,目前它的长期支持版本是4.1.x,所以我们就以4.1.0版本来看一下如何使用。 如何引入 如果使用maven,可以直接在 阅读全文
摘要:
1.岁月的沉淀 我们为什么要学设计模式? 如果是在我刚成为程序员的时候,我大概会这么回答: 因为设计模式是前人经验的总结,可以用来解决特定环境下,重复出现的特定问题。 同时也是程序员进阶的必备知识。 上面的说法当然没有错,但是如果让现在的我来回答,我会加上这几句: 因为设计模式不会过时。 是的,在工 阅读全文
摘要:
作用 在日常开发中,我们常常会遇到一个接口有多个实现类时,需要选择合适的实现类的情况。 最简单的方法是写一个选择器,用if else来判断使用哪个实现类的实例,比如: 然而这种方法不符合开闭原则(OCP),如果再添加一个实现类,那么选择器的代码也需要再加一个else if。 所以,在参考了同事及网上 阅读全文
摘要:
第一部分:面试题 本次分享我们将尝试回答以下问题: 1. GC 是什么? 为什么要有 GC? 2. 简单说一下java的垃圾回收机制。 3. JVM的常见垃圾回收算法有哪些? 4. 为什么要使用分代回收机制? 5. 如何判断一个对象是否存活? 6. 如果对象的引用被置为 null,垃圾收集器是否会立 阅读全文
摘要:
第一部分:面试题 本篇文章我们将尝试回答以下问题: 1. 描述一下jvm的内存结构 2. 描述一下jvm的内存模型 3. 谈一下你对常量池的理解 4. 什么情况下会发生栈内存溢出?和内存溢出有什么不同? 5. String str = new String(“abc”)创建了多少个实例? 第二部分: 阅读全文
摘要:
面试题 带着问题学习是最高效的,本次我们将尝试回答以下问题: 1. 什么是类的加载? 2. 哪些情况会触发类的加载? 3. 讲一下JVM加载一个类的过程 4. 什么时候会为变量分配内存? 5. JVM的类加载机制是什么? 6. 双亲委派机制可以打破吗?为什么 答案放在文章的最后,来不及看原理也可以直 阅读全文
摘要:
目前已发布的文章: "不止面试—jvm类加载面试题详解" "不止面试—JVM内存模型面试题详解" 缘起 从事近7年Java开发之后,在2019年这个寒冷的冬天里,我终于迎来了人生中的第一次裁员。 啊,30岁之后的裁员真让人焦虑。 按照以往惯例,在面试心仪的公司之前,需要先面试一些不那么心仪的公司热身 阅读全文
摘要:
1、继承 空心三角+实线 2、实现接口 空心三角+虚线 3、关联 箭头+实线 4、聚合 空心菱形+实线+箭头 5、组合 实心菱形+实线+箭头 6、依赖 虚线+箭头 7、关联、聚合、组合、依赖的区别 关联表现为变量(has a )。A关联B,则B体现为A的全局变量。 聚合是关联关系的一种,是强的关联关 阅读全文