`
lijuanabc
  • 浏览: 125916 次
社区版块
存档分类
最新评论
文章列表
对抽象工厂模式还不是吃的很透,这里只写我的个人看法,希望各位能花些时间看下,帮我指正其中的认识误差。 考虑这样一种情况:有一个产品,不再是由单一的一种产品组成,而是有两种或两种以上的产品组成。比如说电脑,有一个主机和一个显示器。比如A类电脑有一个小主机和一个液晶显示器,B类电脑有一个大主机和CRT显示器。如果使用工厂方法模式来实现,就必须由四个工厂类来分别创建着四个产品。这时候,会想到使用一个类来完成主机和显示器的创建,但是主机和显示器是两个抽象的类,是不能直接实例化的,因此,就需要使用抽象工厂模式来解决这一问题。 个人感觉抽象工厂模式与工厂方法模式非常类似,只不过工厂方法模式中产品的抽象父 ...
首先感谢热心网友对我的帮助,现把CSDN博客评论插入表情的方法分享给大家。 方法一: 在博客评论时输入"[e01]——[e10]",就会出现相应的表情。 "[e01]——[e10]"对应的表情如下: 使用方法:比如你输入"[e10]",就会出现"顶"这个表情。 [e01] 方法二:
【如何带队伍?】 曾国藩:“轻财足以聚人,律己足以服人,量宽足以得人,身先足以率人”。
我一直认为一个人谦逊很重要。 我还只是个菜鸟,有太多的不知。但是当我懂得更多的时候,我会发觉我不知道的越来越多。山外有山,人外有人。不管你有多厉害,都要保证谦逊和低调。因为在你的上面比你厉害的人多 ...
工厂方法模式是对简单工厂模式的改进,克服了简单工厂模式不能很好的遵循开闭原则的缺点。工厂方法模式对工厂类进行了抽象化,并为每一种对应的产品创建一个对应的工厂类。当系统中引进了一种新的产品时,只需创建一个工厂类继承自工厂抽象类即可,无须对现有的系统做任何的修改。从而使系统满足了开闭原则的要求,提高了系统的可扩展性。 上一节的产品类是使用接口来进行抽象化操作的,其实使用抽象类来进行抽象化操作也是一样的。 这是抽像产品类package com.test; public abstract class Product { public abstract void actio ...
在Web工程过程中,基于Web系统的测试、确认和验收是一项重要而富有挑战性的工作。基于Web的系统测试与传统的软件测试不同,它不但需要检查和验证是否按照设计的要求运行,而且还要测试系统在不同用户的浏览器端的显示 ...
frameworks\base\media\java\android\media\AudioManager.java /** @hide Default volume index values for audio streams */ public static final int[] DEFAULT_STREAM_VOLUME = new int[] { 4, // STREAM_VOICE_CALL 7, // STREAM_SYSTEM 5, // STREAM_RING 11, // STREAM_M ...
增强功能: 独立线程侦听连接请求 线程池处理连接通信 AES 256位数据加密传输 下载地址: TcpClientPlus.zip 演示程序界面: 演示程序源代码: using System; using System.Net; using System.Net.Sockets; using System.Windows.Forms; using Splash.Net.Sockets; using Splash.Windows.Forms; namespace RunServer { public partial class Form1 : Form ...
using System; using System.Collections.Generic; using System.Net.Sockets; using System.Threading; namespace Splash.Net.Sockets { public partial class TcpListenerPlus : TcpListener { /// <summary> /// 委托声明 /// </summary> /// <param name="sen ...
/* ---------------------------------------------------------- 文件名称:TcpListenerPlus.cs 作者:秦建辉 MSN:splashcn@msn.com QQ:36748897 博客:http://blog.csdn.net/jhqin 开发环境: Visual Studio V2010 .NET Framework 4 Client Profile 版本历史: V1.0 2012年04月25日 实现线程池通信 参考资料: http://www.switchontheco ...
using System; using System.IO; using System.Security.Cryptography; using System.Text; namespace Splash.Net.Sockets { /// <summary> /// 实现传送数据的加解密 /// </summary> public partial class NetworkStreamPlus { /// <summary> /// 哈 ...
using System; using System.IO; using System.Net.Sockets; using System.Text; using System.Threading; namespace Splash.Net.Sockets { /// <summary> /// 异步读状态对象 /// </summary> internal class AsyncReadStateObject { public ManualResetEvent eventDone; public ...
using System; using System.Net.Sockets; using System.Text; using System.Threading; namespace Splash.Net.Sockets { /// <summary> /// 异步写状态对象 /// </summary> internal class AsyncWriteStateObject { public ManualResetEvent eventDone; public NetworkStream st ...
/* ---------------------------------------------------------- 文件名称:NetworkStreamPlus.cs 作者:秦建辉 MSN:splashcn@msn.com QQ:36748897 博客:http://blog.csdn.net/jhqin 开发环境: Visual Studio V2010 .NET Framework 4 Client Profile 版本历史: V1.0 2012年04月19日 完成异步读写和数据加密传输功能 -------------- ...
增强功能: 独立通信线程 AES 256位数据加密传输 下载地址: TcpClientPlus.zip 演示程序界面: 演示程序源代码: using System; using System.Net.Sockets; using System.Windows.Forms; using Splash.Net.Sockets; using Splash.Windows.Forms; namespace RunCli ...
Global site tag (gtag.js) - Google Analytics