知识
ason.wxs
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Lambda表达式运行原理
目录一、创建测试样例二、利用Java命令编译分析三、文末JDK8引入了Lambda表达式以后,对我们写代码提供了很大的便利,那么Lambda表达式是如何运用简单表示来达到运行效果的呢?今天,我们通过一个例子来学习下Lambda表达式的底层运行原理!一、创建测试样例首先:我们创建一个测试类App.java,在它内部新建一个函数式接口Lam.java,只有一个抽象方法print(),作用是将传入的消息加工后再输出。然后:我们在测试类App.java中进行lambda表达式的创建测试。代码如下:pub原创 2020-07-27 13:14:52 · 608 阅读 · 0 评论 -
函数式接口
函数式接口特点:重点接口包路径:java.util.funciont特点:具有唯一的抽象方法,有且仅有一个 (即所有的函数式接口,有且只能有一个抽象方法)加上标注 @FunctionalInterface,则会触发 JavaCompiler的检查。对于符合函数接口的接口,加不加都无关紧要,但是加上则会提供一层编译检查的保障。如果不符合,则会报错。继承后的抽象方法则不算抽象方法。例如接口实现了Object中的方法,toString()等方法。可用于lambda类型的使用方式重点接口P原创 2020-07-27 09:53:38 · 263 阅读 · 0 评论 -
简单计算引擎分享
简单计算引擎一、背景二、限定场景三、代码实现1.实体类2.计算类3.工具类4.解析类5.测试四、总结一、背景最近,工作中经常遇到公式计算的情况,虽然都是加减乘除的简单运算,但使用比较频繁,于是,自己就乘着业余时间手写了一个仅支持加减乘除法的计算引擎,分享出来,供大家一起学习!首先,一遇到简单计算,可能很多人都会想到Java通过JavaScript引擎调用Javascript数学函数实现计算,创建实例如下:ScriptEngine engine = new ScriptEngineManager()原创 2020-07-24 23:36:02 · 489 阅读 · 0 评论 -
通过实例深入理解监听器
通过实例深入理解监听器一、什么是监听器二、监听器要素三、实现步骤四、实例1.场景描述2.代码实现1)定义监听器接口2)监听者、被监听者3)创建事件对象4)实现监听器接口,分别创建监听者、被监听者的监听实例5)在监听者内部创建触发行为6.)在被监听者内部创建响应行为7)创建测试用例3.功能扩展1)定义监听器接口2)监听者、被监听者3)创建事件对象4)实现监听器接口,创建监听实例5)在监听者内部创建触发行为6.)在被监听者内部创建响应行为7)创建测试用例五、文末之前写过一个简单监听器的实例文章,想要了解的,可原创 2020-07-23 21:24:24 · 831 阅读 · 0 评论 -
学习使用CompletableFuture
CompletableFuture一.前言1.JDK5的异步处理方式2.JDK8的异步处理方式二、学习CompletableFuture1.结果获取方式2.创建CompletableFuture对象3.CompletableFuture 的异步回调功能:thenApply4.运行完成时的代码,即对结果进行消耗:thenAccept5.上一步结果与下一步操作无关系:thenRun6.对2个cf的结果进行组合:thenCompose7.结合2个cf的结果:thenCombine8.消耗两个cf的结果,不返回结果原创 2020-07-23 15:53:42 · 348 阅读 · 0 评论 -
单点登录(SSO)
单点登陆介绍一、简介二、技术特点1.普通登录认证机制2.同域下的单点登录3.不同域下的单点登录4.问题三、总结一、简介单点登录英文全称Single Sign On,简称就是SSO。意思就是:在多个应用系统中,只需要登录一次,就可以访问其他相互信任的应用系统。如图所示,图中有4个系统,分别是Application1、Application2、Application3、和SSO。Application1、Application2、Application3没有登录模块,而SSO只有登录模块,没有其他的业翻译 2020-07-15 17:45:17 · 216 阅读 · 0 评论 -
MIME-TYPE 列表
Suffixes applicableMedia type and subtype(s).3dmx-world/x-3dmf.3dmfx-world/x-3dmf.aapplication/octet-stream.aabapplication/x-authorware-bin.aamapplication/x-authorware-map.aasapplication/x-authorware-seg.abctext/vnd.abc...原创 2020-06-10 21:10:43 · 407 阅读 · 0 评论 -
手写一个监听器
1.事件对象public class Even { private Robot robot; public Even() { super(); } public Even(Robot robot) { super(); this.robot = robot; } public Robot getRobot() { return robot; } public vo原创 2020-05-28 20:10:19 · 544 阅读 · 0 评论 -
内存溢出的几种原因和解决办法(转)
OOM的常见情况:第一类 堆栈溢出:java.lang.OutOfMemoryError: ......java heap space.....也就是当你看到heap相关的时候就肯定是堆栈溢出了,此时如果代码没有问题的情况下,适当调整-Xmx和-Xms是可以避免的,不过一定是代码没有问题的前提,为什么会溢出呢,要么代码有问题,要么访问量太多并且每个访问的时间太长或者数据太多,导致数据释放不...转载 2019-09-23 17:30:04 · 3248 阅读 · 0 评论 -
学习笔记--数据结构
数据结构数据结构的分类线性结构:数据、栈、队列、链表树结构:二叉树、二分搜索树、AVL、红黑树、Treap、Splay、堆、Trie(前缀树)、线段树、K-D树、并查集、哈夫曼树。。。图结构:邻接矩阵、邻接表数据结构 + 算法 = 程序数据结构数组栈队列链表二分搜索树堆线段树Trie并查集AVL红黑树哈希表数组最大优点:快速查询数据最好应用于“索引有...原创 2019-04-28 17:10:30 · 408 阅读 · 0 评论 -
System.nanoTime与System.currentTimeMillis比较
System.nanoTime与System.currentTimeMillis比较currentTimeMillis返回的是系统当前时间和1970-01-01之前间隔时间的毫秒数,如果系统时间固定则方法返回值也是一定的(这么说是为了强调和nanoTime的区别),精确度是毫秒级别的nanoTime的返回值本身则没有什么意义,因为它基于的时间点是随机的,甚至可能是一个未来的时间,所以返回值可...原创 2019-04-28 16:27:10 · 227 阅读 · 0 评论 -
Java中instanceof和isInstance区别详解
Java中instanceof和isInstance区别详解1. obj.instanceof(class)也就是说这个对象是不是这种类型,1)一个对象是本身类的一个对象2)一个对象是本身类父类(父类的父类)和接口(接口的接口)的一个对象3)所有对象都是Object4)凡是null有关的都是false null.instanceof(class)2. class.inInsta...原创 2019-04-28 16:19:47 · 279 阅读 · 0 评论 -
避免实例化特有工具类
避免实例化特有工具类对于特有工具类,我们需要使用以下三种技术对其进行封装保护:① 用final修饰符,防止了类的继承。② 构造方法私有化,防止了类构建实例对象。③ 构造方法内抛出异常,防止了反射机制对其进行反射构建。...原创 2019-04-28 16:15:15 · 234 阅读 · 0 评论
分享