在前面的简单工厂模式中,通常将每个类、接口定义到不同的文件中。在面向对象开发思想中有一个重要的原则就是封装变化点,在实际操作过程中, 通常被调用方的代码不要去更改,而是增加,这是面向对象的开闭原则。在简单工厂模式中存在一个问题,就是简单工厂类需要知道不同具体类的实现,如果现在多了一种算法比如乘法, ...
分类:
其他好文 时间:
2017-09-27 20:58:00
阅读次数:
130
我在Oracle中给一个用户Id字段设置为Number类型,使用JDBC在完成ORM的时候,以为其可以自动转换为Integer,因为我的POJO类id舒心实用的就是Integer。但事实是,我在测试的时候,发现所有的用户id全为null,还在奇怪明明数据库中id是有值的,为什么取不到? 原因在于Or ...
分类:
数据库 时间:
2017-09-27 19:11:49
阅读次数:
753
1 简单工厂模式的缺陷? 简单工厂模式的工厂加入逻辑判断逻辑,当要增加新的具体工厂时,需要修改代码。这违背了“开放-封边”原则。 2 工厂模式? 工厂模式为每一个具体类都设计一个工厂,这样可以改掉简单工厂的弊端。 3 工厂模式的缺陷? 每增加一个产品就需要增加一个产品的工厂类,增加了额外的开发量 ...
分类:
其他好文 时间:
2017-09-26 17:52:40
阅读次数:
136
1 抽象工厂? 抽象工厂用在既有产品树,又有产品族的场合。 产品树:奔驰旗下的跑车和商务车构成产品树 产品族:奔驰旗下的跑车与奥迪旗下的跑车构成产品族。/*缺点:此时如果需要增加一个红旗厂家的车,需要改的地方很多。1 定义红旗抽象类,具体类;2 Factory接口增加生产红旗的工厂;3 跑车工厂和商 ...
分类:
其他好文 时间:
2017-09-26 17:47:33
阅读次数:
113
简单来说,接口是公开的,里面不能有私有的方法或变量,是用于让别人使用的,而抽象类是可以有私有方法或私有变量的,另外,实现接口的一定要实现接口里定义的所有方法,而实现抽象类可以有选择地重写需要用到的方法,一般的应用里,最顶级的是接口,然后是抽象类实现接口,最后才到具体类实现。还有,接口可以实现多重继承... ...
分类:
编程语言 时间:
2017-09-25 19:48:30
阅读次数:
278
1.Java抽象类 1.抽象类的相关概念 如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。 如形状类是抽象的类,圆、三角形等是具体类。 用abstract修饰的类就是抽象类。如果某个类中包含有抽象方法,那么该类就必须定义成抽象类。但是抽象类中不一定有抽象方法。 2.用abst ...
分类:
编程语言 时间:
2017-09-20 19:28:19
阅读次数:
321
synchronized 锁机制简单的用法,高效的执行效率使成为解决线程安全的首选。 下面总结其特性以及使用技巧,加深对其理解。 特性: 1. Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。 2. 当一个线程同时访问object的一个 ...
分类:
编程语言 时间:
2017-09-20 14:26:36
阅读次数:
172
1、Java变量类型:成员变量、局部变量、静态变量 修饰符public、private、protected、default只能修饰成员变量,不能修饰局部变量。 private、protected不能用来修饰类,只有public、abstract、或final可以修饰类。 2、Java中的接口没有任何 ...
分类:
编程语言 时间:
2017-09-15 14:46:44
阅读次数:
193
1.打开PowerDesigner,鼠标单击File菜单;2.选择:Reverse Enginer,然后在他的子菜单选择Database...;3.选择好DBMS(数据库管理系统)类型;然后点击确定按钮;这里演示选中的是mysql数据库,具体类型根据自己需要选择;4.点击Add Files 图标添加... ...
分类:
数据库 时间:
2017-09-11 21:08:35
阅读次数:
187
GoF中定义: “提供一个能够建立整个类群组或有关联的对象,而不必指明它们的具体类。” 意思就是 根据不同的执行环境产生不同的抽象类子类 抽象工厂模式经常在面试中会涉及到 下面的例子为工厂1和工厂2 两个工厂都可以生成产品A和B 但是两个工厂工艺不同 所以工厂1只能生产产品A1和B1 工厂2只能生产 ...
分类:
编程语言 时间:
2017-09-07 17:10:13
阅读次数:
256