java
oneh_song
这个作者很懒,什么都没留下…
展开
-
java8 lambda 表达式
一、定义 1、Lambda表达式在Java中又称为闭包或匿名函数、 2、lambda内部可以使用静态、非静态和局部变量 3、Lambda方法在编译器内部被翻译成私有方法 4、不能在lambda内部修改定义在域外的变量 二 案例 1、实现Runnable 使用() -> { }替代整个匿名类(创建时用New语句来声明) java8之前: new Thread(new Runnable(){ @...原创 2020-01-21 15:39:17 · 157 阅读 · 0 评论 -
java消息队列
消息队列(Mwssage queue 先入先出(FIFO))中间件是分布式系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构 一、应用中主要两种方式: 1、削峰:所有生产的消息全部放入队列,考虑消费消息的数量,批次处理消息。适合大型数据系统 2、解耦:只考虑生产消息放置情况,不考虑消费情况,适合小型数据系统。 二、目前使用较多的消息队列有Act...原创 2019-10-11 16:15:41 · 510 阅读 · 0 评论 -
java面向对象类型
一、继承: 1、定义:子类继承父类中所有的属性和方法,私有属性可继承不可访问,关键字为extends。一个接口可继承多个接口。 2、补充: (1)实现接口:实现类必须重写接口定义的方法,关键字为implements。一个类中可实现多个接口。 (2)抽象类是介于接口和类之间的定义,关键字为abstract,子类只能同时继承一个抽象类。 二、封装 1、定义:将抽象性函式接口的实现细节部份包装、隐藏起来...原创 2019-10-11 16:17:16 · 169 阅读 · 0 评论 -
重写与重载
重写(Override):子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变 重载(Overload):一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同 ...原创 2019-10-11 16:18:27 · 95 阅读 · 0 评论 -
继承和实现接口的区别
(1)继承就是子类继承父类中所有的属性和方法,子类可以继承父类中的私有属性但是不能访问。关键字为extends 实现接口中的实现类必须重写接口定义的方法,关键字为implements; (2)一个类中可以实现多个接口; (3)一个接口可以继承多个接口,接口与接口之间通过extends实现继承。 补充:抽象类是介于接口和类之间的定义,关键字为abstract,子类只能同时继承一个抽象类。 ...原创 2019-10-11 16:20:37 · 2544 阅读 · 0 评论 -
java常用模式
一、DAO模式 : 1、数据库或其他持久化机制提供了抽象接口的对象,在不暴露底层持久化方案实现细节的前提下提供了各种数据访问操作。 2、DAO模式实际上包含了两个模式,一是Data Accessor(数据访问器),二是Data Object(数据对象),前者要解决如何访问数据的问题,而后者要解决的是如何用对象封装数据 二、适配器模式 1、将某个类的接口转换为接口客户所需的类型 2、解决的问题是,使...原创 2019-10-11 16:40:59 · 321 阅读 · 0 评论 -
分布式锁
1、分布式锁应该具备哪些条件 1)在分布式系统环境下,一个方法在同一时间只能被一个机器的一个线程执行; 2)高可用的获取锁与释放锁; 3)高性能的获取锁与释放锁; 4)具备可重入特性; 5)具备锁失效机制,防止死锁; 6)具备非阻塞锁特性,即没有获取到锁将直接返回获取锁失败。 2、分布式锁实现方式 1)基于数据库实现分布式锁:创建唯一索引 2)基于缓存(Redis等)实现分布式锁:释放锁使用exp...原创 2019-10-11 16:42:03 · 160 阅读 · 0 评论 -
轻量级框架与重量级框架的区分
1、启动程序时需要加载的资源 EJB启动需要消耗大量资源,如CPU、内存等,把所有服务都加载进来;而Spring是可定制服务,需要加载什么就加载什么。 2、框架侵入性程度、依赖性,耦合性程度 轻量级框架侵入性程度较低,不一定需要继承类或接口注册和实例化组件; 重量级需要继承框架的类或接口吗,以方便使用框架中间件特性 3、轻量级是一组独立的特性实现集, 重量级是依赖于某些容器支持框架的特性。 4、开...原创 2019-10-11 16:43:49 · 563 阅读 · 0 评论