摘要:
摘自海子:Java内部类详解 深入理解内部类 1.为什么成员内部类可以无条件访问外部类的成员? 在此之前,我们已经讨论过了成员内部类可以无条件访问外部类的成员,那具体究竟是如何实现的呢?下面通过反编译字节码文件看看究竟。事实上,编译器在进行编译的时候,会将成员内部类单独编译成一个字节码文件,下面是O
阅读全文
posted @ 2018-12-15 10:54
去流浪,去换成长
阅读(201)
推荐(0)
摘要:
出处:Java 8 中的 Stream API详解 什么是流 Stream 不是集合元素,它不是数据结构并不保存数据,它是有关算法和计算的,它更像一个高级版本的 Iterator。原始版本的 Iterator,用户只能显式地一个一个遍历元素并对其执行某些操作;高级版本的 Stream,用户只要给出需
阅读全文
posted @ 2018-12-12 14:09
去流浪,去换成长
阅读(183)
推荐(0)
摘要:
Java 8-接口的默认方法和静态方法 Java 8使用两个新概念扩展了接口的含义:默认方法和静态方法。默认方法使得接口有点类似traits,不过要实现的目标不一样。默认方法使得开发者可以在 不破坏二进制兼容性的前提下,往现存接口中添加新的方法,即不强制那些实现了该接口的类也同时实现这个新加的方法。
阅读全文
posted @ 2018-12-07 17:52
去流浪,去换成长
阅读(134)
推荐(0)
摘要:
Lambda表达式 Lambda表达式是一个类似于匿名函数的语法糖,它实现一个函数式接口,它允许我们将函数当成参数传递给某个方法,或者把代码本身当作数据处理。 一个 Lambda 表达式可以有零个或多个参数 参数的类型既可以明确声明,也可以根据上下文来推断。例如:(int a)与(a)效果相同 所有
阅读全文
posted @ 2018-12-07 15:38
去流浪,去换成长
阅读(223)
推荐(0)
posted @ 2018-12-07 12:42
去流浪,去换成长
阅读(158)
推荐(0)
摘要:
高内聚:(模块内部高内聚) 1、确定模块要完成的功能点,只完成本质功能,不提供多余功能。(理解为责任分离,单一责任原则) 即是在一个模块内部功能也要独立,不能散乱,故名为内聚。 2、代码责任单一,可读 3、高内聚的代码,功能独立,可复用。 4、功能独立,如下单业务,只做下单业务的功能,当要修改时,不
阅读全文
posted @ 2018-12-07 10:29
去流浪,去换成长
阅读(331)
推荐(0)
摘要:
为什么使用注解: 1、通过注解,可保存源数据在Java源代码中;并且注解不同于注释,注解享有编译期的类型检查保护。 2、可在描述符性质的类或接口中抽取重复性的工作,通过注解来简化与自动化这些工作。 注解本身: 1、三个点: 1) 注解的@Target和@Retention 2) 注解的属性 3) 注
阅读全文
posted @ 2018-12-05 14:04
去流浪,去换成长
阅读(141)
推荐(0)
摘要:
注解: @Cacheable // 在方法调用前,先在缓存中去找,若没有,则在方法调用结束后,放到缓存中,属性cacheNames、key。key中可以使用SpEl表达式,如#id,#root.args[0] @CachePut // 每次调用方法,都会刷新缓存。默认是调用方法后刷新;属性可以使用
阅读全文
posted @ 2018-12-04 15:36
去流浪,去换成长
阅读(318)
推荐(0)
摘要:
自定义starter 1、了解相关注解: @Configuration //标志这是一个配置类 @ConditionalOnXXX //在指定条件成立的条件下该类才生效 @AutoConfigureOrder //指定自动配置类的顺序 @AutoConfigureAfter //功能同上 @Conf
阅读全文
posted @ 2018-12-03 14:45
去流浪,去换成长
阅读(157)
推荐(0)