设计模式
砂锅大的拳头
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
根据2个经纬度点,计算这2个经纬度点之间的距离(通过经度纬度得到距离)
如下一个半径为1 的圆,O是圆心,A、B是弦(chord)。角度AOB=theta。则角度AOC=theta/2。OC是垂直于AB的垂线(perpendicular)。AC长度是sin(theta/2),AB长度是2sin(theta/2) 如下地球图所示,假设半径R为1,O是球心,A (lat1,lon1) 和 B (lat2,lon2) 是我们感兴趣的2个点。2跟经度线 lon1,lon2相...原创 2020-02-25 18:23:56 · 654 阅读 · 0 评论 -
建造者模式(Builder Pattern)
当一个类的内部数据过于复杂的时候(通常是负责持有数据的类,比如Config、VO、PO、Entity…),要创建的话可能就需要了解这个类的内部结构,还有这些东西是怎么组织装配等一大坨乱七八糟的东西,这个时候就会增加学习成本而且会很混乱,这个时候就想啊想一种什么法子来管理一下这个类中的数据呢,怎么在创建的时候让它按部就班的来,并且代码可读性很好别让我看花了眼啊,我要的东西也能都很好设置进来,这就是B...原创 2020-01-03 10:04:25 · 315 阅读 · 0 评论 -
工厂模式
要有一个抽象的产品角色; 其次一个产品工厂; 最后个个产品; 简单工厂模式案例(如动物中的猫狗) //抽象的动物类,共有属性吃 package cn.itcast_01; public abstract class Animal { public abstract void eat(); } //动物工厂,来生产动物 package cn.itcast_01; public class ...原创 2019-10-09 20:20:02 · 217 阅读 · 0 评论 -
单例设计模式
懒汉模式 public class SingleDemo { private static SingleDemo demo; private SingleDemo(){} public static synchronized SingleDemo getDemo(){ if (demo!=null){ return demo; ...原创 2019-10-09 19:57:55 · 99 阅读 · 0 评论
分享