分类:软件设计

软件设计

在Java中使用工厂模式

我正在研究工厂模式,我对这是最好的方法是有所怀疑的。 我开发了两个完全相同的程序,唯一的区别是实现有问题的模式的代码。经过比较可以帮助我找到: 代码哪一个更好的可重用性,JVM,性能等,1或2 ? 是否可以做更多的最佳方式? 共享课程 艺术家 public class ArtistFrame extends AbstractFactoryJInternalFram

IT屋 2017/5/16 20:56:48 喜欢

软件设计

国家设计模式

我正在尝试实现状态模式,但问题是,我不会更改状态,当我使用测试类时,它正在使用与接口有关系的具体类。 例如在状态类中的fire和move方法不起作用,并返回Railgun的结果。 这里是代码: public interface RailgunState { public String fire(Point p,int发); public String move(P

IT屋 2017/5/16 20:55:40 喜欢

软件设计

通过在编译时进行验证来改进构建器模式

我最近在我的一个项目中开始使用Builder模式,我试图在我的Builder类上添加一些验证。我假设我们不能在编译时这样做,这就是为什么我在运行时做这个验证。但是可能是我错了,这就是我在编译期间是否可以做到这一点。 传统构建器模式 public final class RequestKey { private final Long userid; private final

IT屋 2017/5/16 20:54:09 喜欢

软件设计

实现低优先级后台线程的模式?

我有一个(软)实时系统查询一些传感器数据,进行一些处理,然后等待下一组传感器数据。传感器数据在接收器线程中读取并放入队列中,因此主线程“通过互斥体”进行“睡眠”,直到新数据到达。 还有其他的任务,如日志记录或者在后台做一些长期的计算。这些被实现为在其他线程中运行。 然而,重要的是,当主线程处理传感器数据时,它应该具有最高优先级,这意味着其他线程根本不应该消耗任何CPU资源可能(目前的后

IT屋 2017/5/16 20:52:01 喜欢

软件设计

帮我避免多重继承。帮助我得到正确的oo设计

我有两个班级LightA和LightB。我有LightB的源代码,但不是LightA的源代码。我用LightDimDip扩展了LightB。即 LightDimDip:extends LightB 。现在我需要将DimDip功能应用于lightB。 任何人都可以提出良好的OOP设计。 再次提醒您,我无法修改LightA。 解决方案 灯是否有通用的界面?在这种情况下,我想你可以在

IT屋 2017/5/16 20:51:28 喜欢

软件设计

代理设计模式 - tutorialspoint.com示例

http://www.tutorialspoint.com/design_pattern/proxy_pattern.htm 嗨, 我正在寻找在java中使用 中的示例来了解代理设计模式链接上面。在主要的方法我不明白之间的区别: //图像将从磁盘加载 image.display(); System.out.println(“”); //图像不会从磁盘加载

IT屋 2017/5/16 20:51:15 喜欢

软件设计

从基类指针访问派生类成员的设计方案

我正在写一个DAL / ORM库。该图书馆将主要从GUI访问,也可以从某些“业务级”应用程序访问。我仍然在这个图书馆的设计阶段,而且我不知道如何很好地解决以下问题。 在我目前的设计中有一个类,让我们称之为 List ,其中有一个容器是另一个类,属性。属性有两种口味(A和B),主要具有相同的功能,但其一些功能是不同的。此外,$ 属性的两种口味都存储值。值可以是不同的数据类型,包括但不限于POD

IT屋 2017/5/16 20:50:44 喜欢

软件设计

继承 - 子类中的变量初始化

我倾向于根据我在大学学到的“最佳实践”类课程,在可能的基础上,继承组合。我正在看一个应用程序中的一些代码,如下所示: 公共类A 受保护的_Name作为字符串 公共属性名称()As String 获取 返回_Name 结束获取 设置(ByVal值As String) _Name = value 结束集 结束属性 结束类 公共类B 继承A 结束类 公共类C 继承B 结束

IT屋 2017/5/16 20:48:44 喜欢