自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 资源 (8)
  • 收藏
  • 关注

原创 Java设计模式——代理模式(Proxy Pattern)

什么是代理模式客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。为其他对象提供一个代理以控制对某个对象的访问。【中介,律师等】 AbstractObject【抽象对象角色】 : 声明了目标对象和代理对象的共同接口。 RealObject【委托对象】 : 代理对象所代表的东西。 ProxyObject【代理对象】 : 代理对象内部含有委托对象的引用,从

2017-05-31 22:36:02 903

原创 Java设计模式——抽象工厂(Abstract Factory)以及工厂模式总结

抽象工厂和工厂方法的区别 工厂方法模式只有一个抽象产品类,而抽象工厂模式有多个抽象产品类。 工厂方法模式的具体工厂类只能创建一个具体产品类的实例,而抽象工厂模式可以创建多个具体产品类。(与上面呼应) 【个人认为】抽象工厂和工厂方法最明了的区别就是【抽象工厂有多个产品】 结构类图先上图分析一波 【与工厂方法最主要的区别在于 iHeroFactory多了Wear()方法,多了 Iequipm

2017-05-24 21:33:58 949

原创 Java设计模式——工厂方法(Factory Method)

什么是工厂方法定义一个创建产品对象的工厂接口,让子类决定实例化哪一个类,将实际创建工作推迟到子类当中。它的核心结构有四个角色,分别是 【抽象工厂】Factory : 具体工厂类必须实现这个接口。在实际的系统中,这个角色也常常使用抽象类实现。 【具体工厂】ConcreteFactory : 实现了抽象工厂接口的具体类。具体工厂角色含有与业务密切相关的逻辑。 【抽象产品】Product :

2017-05-23 22:29:24 3131 1

原创 Java设计模式——简单工厂(Simple Factory)

什么是简单工厂【又叫静态工厂】由一个工厂类来创建具有相同父类的类。【漫威的英雄有一个共同点,那就是他们都有很强的作战能力(分为智力,力量,和格斗技巧等)】结构类图 简单工厂【Simple Factory】 iHeroFactory: 专门用来调度英雄,传入名字召唤漫威英雄。 iHero : 定义英雄(产品)规范(都有超强的能力skill),可以使用接口或抽象类。 public int

2017-05-15 23:38:26 879

原创 Java设计模式——策略(Strategy)

什么是策略模式将一组算法,封装到具有共同接口的独立类中,这些类可以相互转化。 结构类图 策略模式【Strategy】 【抽象策略】Strategy : 通常由接口/抽象类实现,给出具体的策略所需要的方法。 【具体策略】ConcreteStrategy : 具体实现的策略算法和步骤。 【封装类】Context : 持有一个Strategy的引用。对策略二次封装,避免了对策略的直

2017-05-08 22:57:37 954 1

原创 Java设计模式——模板方法(Template Method)以及策略模式比较

什么是模板方法定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。是基于继承的代码复用的基本模式。结构类图 抽象模板【AbstractTemplate】 【模板方法】templateMethod : 把基本操作方法组合在一起形成一个总算法或一个总行为的方法。 【抽象方法】abstractMethod : 父类

2017-05-07 10:13:34 1382

原创 Java设计模式——单例(Singleton)

什么是单例单例是保证一个内存/进程里只有一个类的实例,并提供一个访问它的全局访问点。 内存/进程中只有一个实例 线程安全 性能优化 防止序列化产生新对象 初用懒汉式饿汉式缺点 :单例会在加载类后一开始就被初始化,即使客户端没有调用 getInstance()方法。饿汉式的创建方式在一些场景中将无法使用:譬如 Singleton 实例的创建是依赖参数或者配置文件的,在 getInstance() 之前

2017-05-06 10:06:50 883

AIDLDemo项目,包含客户端和服务端

本Demo意在快速实现AIDL项目 在服务端创建AIDL文件,用来声明java Bean以及传输调用的接口。【声明文件】 在服务端创建Service并且实现上面的接口。【创建服务】 客户端绑定Service。【绑定服务】 客户端调用服务端接口。【跨进程调用】

2017-09-24

AIDL进程间通讯demo

AIDL进程间通讯demo,A [android] I [Interface] D [Definition] L [Language],Android接口定义语言。 作用:方便系统为我们生成代码从而实现跨进程通讯,仅此而已。(玉刚老师如是说也),也就是说这个AIDL就只是一个快速跨进程通讯的工具。

2017-09-23

超酷炫的ViewPager切换效果和贝塞尔指示器

超酷炫的ViewPager切换效果和贝塞尔指示器

2017-04-06

Android BezierViewPager

Android BezierViewPager

2017-04-05

BezierRound

BezierRound

2017-04-05

安卓Shader实战

Android Shader 实战

2017-03-19

RadarView.rar

RadarView,自定义雷达

2017-03-11

RoundMenuView

RoundMenuView

2017-03-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除