常用的函数式接口Function接口 package com.yang.Test.FunctionStudy; import java.util.function.Function; /** * java.util.function.Function<T,R>接口用来根据一个类型的数据得到另一个类型的数据, * 前者称为前置条件,后者称为后者条件 * Function接口中最主要的抽象方法为:R apply(T t),根据类型T的参数获取类型R的结果. * 使用场景例如:将String类型转换…
Consumer接口 java,util.function.Consumer接口则正好与Supplier接口相反,它不是生产一个数据,而是消费一个数据,其数据类型由泛型决定 抽象方法:accept Consumer接口中包含抽象方法void accept(T t),意为消费一个执行的数据. 使用: package com.yang.Test.ConsumerStudy; import java.util.function.Consumer; /** * java.util.function.Co…
Java 8 API提供了很多全新的函数式接口来让工作更加方便,有一些接口是来自Google Guava库里的,即便你对这些很熟悉了,还是有必要看看这些是如何扩展到lambda上使用的. 一.Optional接口 1.null 带来的种种问题 1).它是错误之源:NullPointException 是目前Java程序开发中最典型的异常: 2).它会使你的代码膨胀:它是让你的代码充斥着深度嵌套的null检查,代码的可读性槽糕透顶. 3).它自身是毫无意义的.null自身没有任何的意义,尤其是,它…
在Java SE 8之前,interface只是事物的抽象,用来定义统一的抽象事物和描述事物的抽象行为和属性. 但是在Java SE 8中,增加了可以在interface中增加默认实现的行为和事物的静态行为. 一.为什么? java迭代了如此多的版本且主要采用的都是演化的思想而非重构(为了保证与历史的兼容性). 这样就容易出现很多比较难以处理的问题,接口在发布之后就已经被定型,除非我们能够一次性更新所有该接口的实现.比如某个历史接口有很多实现,需要在历史接口中增加一个行为,那么久需要在它的所有实…
常用的函数式接口_Prodicate接口_默认方法or&negate OR package com.yang.Test.PredicateStudy; import java.util.function.Predicate; /** * 需求:判断一个字符串,有两个判断条件 * 1.判断字符串的长度是否大于5 * 2.判断字符串中是否包含a * 满足一个条件即可,我们就可以使用||运算符链接两个条件 * * Predicate接口中有一个方法or,表示或者关系,也可以用于连续两个判断条件 * d…
package com.yang.Test.PredicateStudy; import java.util.function.Predicate; /** * java.util.function.Predicate<T>接口 * 作用:对某种数据类型的数据进行判断,结果返回一个boolean值 * * Predicate接口中包含一个抽象方法: * boolean test(T t):用来对指定数据类型数据进行判断的方法 * 结果: * 符合条件,返回true * 不符合条件,返回fals…
默认方法:and 既然是条件判断,就会存在与.或.非三种常见的逻辑关系.其中将两个Preadicate条件使用"与"逻辑连接起来实现"并且"的效果时,可以使用default方法and .其JDK源码为: default Predicate<T> and(Predicate<? super T> other) { Objects.requireNonNull(other); return (t) ‐> test(t) &&…
16.Collection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements).一些Collection允许相同的元素而另一些不行.一些能排序而另一些不行.Java SDK不提供直接继承自Collection的类,Java SDK提供的类都是继承自Collection的“子接口”如List和Set. 所有实现Collection接口的类都必须提供两个标准的构造函数:无参数的构造函数用于创建一个空的Collec…
Atitit.远程接口 监控与木马   常用的api 标准化v2 q216 1. 木马与远程接口 监控的常用的api2 1.1. 文件复制2 1.2. 屏幕定时截图2 1.3. 邮件发送2 1.4. 键盘监听2 1.5. 远程上传代码与执行2 1.6. 注册系统服务2 1.7. 远程shell  console2 1.8. .修改注册表2 1.9. Eval功能2 1.10. 控制鼠标键盘gui接口功能2 1.11. 文档 图片文件读写监控2 1.11.1. JDK1.6及之前版本: 基于Tim…
一:函数式接口 1.函数式接口的概念就是此接口必须有且只能有一个抽象方法,可以通过@FunctionalInterface来显示规定(类似@Override),但是没有此注解的但是只有一个抽象方法的接口也是函数式接口:(接口也和类一样有包访问权限,但是内部的方法则默认是public) @FunctionalInterface public interface IFoo{ void print(); }  // 就是一个最简单的函数式接口,但是如果再有个如void print2()抽象方法则这个接…