摘要: 阅读全文
posted @ 2018-07-08 08:39 liuwd 阅读(81) 评论(0) 推荐(0)
摘要: 抽象工厂使用场景: QQ换皮肤一整套一起换 1)创建形状接口和颜色接口 和实现该接口的实现类 接口 /** * 定义一个颜色接口 * @author Administrator */ public interface Color { //装满 void fill(); } /** * 定义形状接口 阅读全文
posted @ 2018-07-08 08:34 liuwd 阅读(156) 评论(0) 推荐(0)
摘要: 使用场景: 1、日志记录器:记录可能记录到本地硬盘、系统事件、远程服务器等,用户可以选择记录日志到什么地方。 2、数据库访问,当用户不知道最后系统采用哪一类数据库,以及数据库可能有变化时。 3、设计一个连接服务器的框架,需要三个协议,"POP3"、"IMAP"、"HTTP",可以把这三个作为产品类, 阅读全文
posted @ 2018-07-07 22:03 liuwd 阅读(129) 评论(0) 推荐(0)
摘要: 一、静态代理: 静态代理实现 通过代理对象与被代理对象实现同一个接口,被代理对象中实现对代理对象中的方法进行增强 弊端:必须继承或实现同一个接口 定义一个接口ProposalService 目标对象(也就是被代理对象)实现ProposalService接口 代理对象 实现ProposalServic 阅读全文
posted @ 2018-07-07 12:30 liuwd 阅读(196) 评论(0) 推荐(0)
摘要: 实现单链表的反转 实现单链表反转有多种方式 可以采用递归等方式实现 下面实现方式为采用栈 栈先进后出原则 阅读全文
posted @ 2018-07-07 09:02 liuwd 阅读(303) 评论(0) 推荐(0)
摘要: 一、 synchronized的缺陷 当一个代码块被synchronized修饰时,同时该代码块被一个线程执行,其他线程便只能一直等待,等待获取锁的线程释放锁,而这里获取锁的线程释放锁只会有两种情况: 1)获取锁的线程执行完成代码块,自动释放锁资源 2)代码块中执行异常,由jvm释放锁资源 如果在执 阅读全文
posted @ 2018-07-05 22:50 liuwd 阅读(275) 评论(0) 推荐(0)
摘要: 常见三种使用方式 1)普通同步方法,锁是当前实例;2)静态同步方法,锁是当前类的Class实例,Class数据存在永久代中,是该类的一个全局锁;3)对于同步代码块,锁是synchronized括号里配置的对象。 方式一 普通方法通过synchronized修饰 1)不采用synchronized 当 阅读全文
posted @ 2018-07-04 17:56 liuwd 阅读(335) 评论(0) 推荐(0)
摘要: 一、什么是PL/SQL? PL/SQL(Procedural Language/Structure Query Language) 是Oracle对标准sql规范扩展,它全面支持SQL的数据操作、事务控制等。 二、PL/SQL编写规则 1.标识符命名规则 1)变量,建议使用v_作为前缀,如v_sal 阅读全文
posted @ 2018-07-04 17:46 liuwd 阅读(274) 评论(0) 推荐(0)
摘要: 1)字符串函数 length()函数 用于返回字符串长度 select t.name,length(t.name) from tb_person t 2)向左补全字符串 LPAD()函数 LPAD()函数用于向左补全字符串,主要用于字符串的格式化。 格式化:将字符串格式化为指定长度,如有不足部分,则 阅读全文
posted @ 2018-07-04 17:44 liuwd 阅读(1025) 评论(0) 推荐(0)
摘要: lambda表达式与函数式接口是结合使用的。 函数式接口:接口中只有一个抽象方法的接口,其中可以包括default修饰,static 修饰的实例方法。函数式接口可以在接口上添加@FuncationInterface注解(也可以不加),实现方式可以与普通接口一样,通过定义一个实现类实现该接口,也可以通 阅读全文
posted @ 2018-07-04 17:42 liuwd 阅读(556) 评论(0) 推荐(0)