java开发
文章平均质量分 86
java开发
nades
每天进步一点点
展开
-
Java单例模式详解五种实现方式
简述:单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。目的:保证一个类有且仅有一个实例,并提供一个访问它的全局访问点。解决问题:管理一个被高频率使用的类,被频繁的创建和销毁。只用单例能更好的节省程序执行时间和减少空间内存的使用。原创 2020-09-30 11:30:20 · 283 阅读 · 0 评论 -
java 时间转换之LocalDate,LocalTime ,LocalDateTime的使用篇二
上一篇说了 LocalDate,LocalTime ,LocalDateTime的基础使用;本文主要是说LocalDate,LocalTime ,LocalDateTime的比较,特殊时间格式的处理,一段时间的获取1、首先写一些基础方法/** * 指定时间住那换为时间戳 * @param time 只能是时间格式,例如 HH:mm:ss、HH:mm、mm:ss 15:30:55、15:30、30:55 * @param formatter HH:mm:ss、HH:原创 2020-07-02 16:50:49 · 2067 阅读 · 0 评论 -
java 时间转换之LocalDate,LocalTime ,LocalDateTime的使用篇一
关于时间转换第一时间我们会想到 Date,SimpleDateFormat,calendar进行转换;但如果Date不格式化,打印出的日期可读性差。使用SimpleDateFormat对时间进行格式化,但SimpleDateFormat是线程不安全的。calendar是共享变量,并且calendar没有做线程安全控制,多线程同步调用时会发生时间错误;此时 java 8退出全新的时间和日期工具类;具体如下:LocalDate(日期工具类:yyyy-MM-dd);LocalTime (时间.原创 2020-06-23 14:24:00 · 2748 阅读 · 1 评论 -
retrofit+rxjava+okhttp网络框架之二次封装
retrofit+rxjava的是这几年很流行的一种网络框架,开发者也提供了丰富的方法。之所以进行二次封装,就是因为retrofit+rxjava的链式调用太方便了,不符合单一性原则,管理起来比较麻烦。主要目的是二次封装后,和项目有很高的契合度更高。说一下封装思路,由于其本身调用方便,具体方法就不做封装了。第一 retrofit对象封装。第二 封装okhttp拦截器,用于添加头参...原创 2020-03-11 20:00:31 · 810 阅读 · 1 评论 -
学习kotlin第一天,kotlin方法、kotlin条件表达式、kotlin循环语句和when表达式
经过长时间的断更后,从今天开始继续更新和学习。今天学习了kotlin方法、kotlin条件表达式、kotlin循环语句和when表达式。一一记录。/**有参有返回方法1*/fun sum(a: String,b: String) = a + b/**有参数有返回方式2*/fun sum1(a:Int,b:Int): Int{println(“这是一个有参数有返回的方法书写...原创 2020-03-04 23:05:06 · 482 阅读 · 0 评论 -
自定义Dialog 防止物理键关闭 和 点击外部点击关闭
平时工作中,dialog是一种经常使用的控件。物理返回键和点击外部关闭,适用于轻提示类,设计者不关心这种情况的交互,类似于通知的使用情景。还有一种情况,必须用户知晓的和操作的dialog.现在有两种情况,一是,点击外部不可关闭,二是,点击物件键返回不关闭。final Dialog dialog = new Dialog(context, com.nade.commenlib.R.style.M...原创 2020-01-17 11:37:10 · 1640 阅读 · 0 评论 -
SQLiteOpenHelper数据库增删改查和数据库升级操作
public class DbHelper extends SQLiteOpenHelper {private Context context;public DbHelper(Context context){super(context,DbManager.DB_NAME,null,DbManager.DB_VERSION);}public DbHelper(Context contex...原创 2019-12-13 15:03:13 · 936 阅读 · 0 评论 -
Dijkstra算法之最短路径规划 高德地图多点路线规划路线最短原则排序算法
继续上一篇 写路线规划 上一篇写道多点路线规划 高德地图仅仅只会按照你给出的点的顺序进行路线规划 并不会智能的给你按照最近或者最快进行规划 举个例子 A B C D 四个点路线规划 A是起点 D是终点 B C 是途径点 加入你按照 A - B - C - D 的顺序给高德 那么高德返回给你的就是 A - B - C - D这个顺序 加入这时A - B - C - D...原创 2018-06-11 12:05:19 · 29176 阅读 · 10 评论 -
高德地图之路线规划 多点路线规划路线最短原则之二 TSP算法
经过这段时间的使用和研究,我发现点和点之间的最短路线并不是最优的。针对所有点的组合可能,得到的最短路线才是最好的(也就是TSP方法),然后再结合点对点之间的距离进行比较,得到的才是相对最优方案。举例:A、B、C、D四个点。自由组合,得到最短路线方案。所有的组合路线应该是(此处我们只需要四个点的组合)ABCDABDCACBDACDBADCBADBCBACDBADCBCADB...原创 2019-12-26 14:11:57 · 9792 阅读 · 2 评论 -
java List 集合排序
List 集合 是一种数据存储容器 它的特点是有序 存取同序 每一个元素都有对相应的下表 即index 大致说一下 今天主要介绍的不是List 集合 而是排序 我们一般的思路都像是给数组排序那样 便利 比较大小 然后 换位 然后在进行遍历 比较大小 直到所有的元素都比较完毕 才结束 当然这个也是可行的 但毕竟比较臃肿 还是不推荐这种方式 java 给我们提供了一个类Collection...原创 2018-06-04 10:37:34 · 434 阅读 · 0 评论 -
初探设计模式之建造者模式
在我们工作或者学习中 我们可能会遇到很多的例如:builder.setName(“张三“).setAge(“22”);这种使用方法 使用超级方便 是不是很羡慕 这种方式的方便程度 以及 简单程度 下面我们聊一下这种方式我们写一个modelbean 基本都是这样的 public class Person1 { String name; String iden...原创 2018-06-19 20:46:24 · 406 阅读 · 0 评论 -
初探设计模式之代理模式
代理模式 顾名思义 就像某商品生产商 将产品交由 某一销售公司由他们的销售渠道代理出售一样 这个商品生产商 就是被代理类(被代理人) 销售公司就是代理类(代理人) 销售团队就是抽象方法(也就是卖商品) 所以代理模式 就是由代理人 替 被代理人 完成 某一任务 代理模式有三部分组成 第一部分 要有一个被代理类 (商品生产商) 一个抽象接口 (卖商品) 一个代理类(销售公司)下面我们上代...原创 2018-06-20 10:38:48 · 457 阅读 · 0 评论 -
初探设计模式之观察者模式
观察者模式 基本含义 顾名思义就是一个观察者角色 观察 被观察角色的变化 这是一种一对多的对象关系 举个例子 对新生儿的情况进行观察 首先你要有一个新生儿(被观察对象), 护工/护理(观察者) ,记录新生儿的何种生命活动情况并在发生变化时记录数据(抽象实现类) ,反馈给医生和新生儿父母 (使用实现类) ;这个流程就是观察者模式 可以一对一 也可以一对多的关系具体使用 观察者模式...原创 2018-06-28 10:33:42 · 359 阅读 · 0 评论 -
检验银行卡卡号是否合法有效
本文使用的是alibaba 所提供的公共接口 https://ccdcapi.alipay.com 进行银行卡卡号的检验 public void checkBackId(String backID){ String checkID = "https://ccdcapi.alipay.com/validateAndCacheCardInfo.json?_input_chars...原创 2018-07-03 19:58:48 · 3537 阅读 · 0 评论 -
java 反射机制及动态代理
反射概述 Reflection(反射)是Java被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的內部信息,并能直接操作任意对象的内部属性及方法。 Java反射机制主要提供了以下功能:在运行时构造任意一个类的对象 在运行时获取任意一个类所具有的成员变量和方法 在运行时调用任意一个对象的方法(属性) 生成动态代理 Class...原创 2018-07-17 16:31:42 · 347 阅读 · 0 评论 -
Git 远程仓库之Push rejected: Gitutils: push to origin/master was rejected
当我们使用代码托管工具的时候 我们会想到svn github 码云 这些第三方工具 进行这个里我是以git 说的 当我们使用github gitee(码云)为例子 关于上传步骤 我简单说一下 在github 或者 gitee 上创建仓库 然后clone 到本地 创建项目 然后编码 然后上传至github 或者 gitee 就可以了 今天主要是说将本地库推送到 git...原创 2018-07-05 13:40:54 · 1991 阅读 · 2 评论 -
Android 高德地图之拖动定位、多点路线规划给路段设置不同颜色
又有新需求 所以继续地图开发 这里记录两点 一是拖动定位 二是对多点路线规划不同路段设置颜色 下面给出效果图看一下 再上干货先推荐一个拾取经纬度工具 http://www.gpsspg.com/bs.htm由于上传大小受限 gif就不上了https://www.jianshu.com/p/f6821974e463 点击可查看效果先说第一种效果 拖动定位 这个效果还是很简单的实现的说一...原创 2018-12-10 09:51:09 · 5164 阅读 · 2 评论 -
Win环境 mysql 解压版安装
今天讲一下 mysql 解压版安装 mysql 下载 https://www.mysql.com/downloads/ 下载完成以后 解压 后得到 创建一个data 和 my.ini 文件 如果已存在 .ini 删除就好了 data 生成路径 .ini 文件是配置文件.ini 文件内容 —————————————————————–.ini 文件内容———————————...原创 2018-03-30 16:46:07 · 732 阅读 · 0 评论