静态方法 是可重用代码还是模块?
来源:智慧掩盖真相 - 博客园
比如,有个静态方法
public class StaticTest{
public static void Test(){}
}
这个是可重用代码还是模块呢?恐怕不好说。因为,可重用代码和模块非常相似。怎么区分这两个概念?还真是头疼。委托就是一种可重用的代码,而委托的方法,则是模块。事件,Handler是可重用方法,而event是模块,可以这样理解?
可重用代码也就是可以适用于不同上下文的代码,而模块呢是指功能分离成快的方法。可以看出最起码在编码中方法调用的次数,可重用的方法适用次数要大于等于模块方法。
public class Test{
public static void DoMethodA(){}
public static void DoMethodB(){DoMethodA(); }
}
public class TestA{
public void DO(){Test.DoMethodB(); };
}
public class TestB{
public void DO(){Test.DoMethodB(); };
}
Test类有两个方法,DoMethodA 和DoMethodB,DoMethodB使用了DoMethodA。在上面的代码中虽然在运行时执行次数上来说DoMethodA和DoMethodB应该是次数相同的,但是,DoMethodB得引用次数要高于DoMethodA。可以认为在上面的代码DoMethodA是模块,而DoMethodB是可重用代码。假如把DoMethodA的修饰符修改为private,那么就更加可以说明问题了。
从上面代码可以看出一个什么问题呢?假如修改了DoMethodB方法会导致什么问题?很可能需要修改任何使用了DoMethodB方法的代码。可见DoMethodB难于修改,因为它的应用次数过多,很难保证某一个地方不出现逻辑错误。
而模块就要好很多啦,修改DoMethodA,只需要在DoMethodB方法中进行修正就可以了。
那么把可重用代码尽量拆分成多个模块是不是更加方便呢?我认为是的。我认为把可重用代码分解为多个模块可以让代码更加易于修改。
对于运行时多次使用的方法,应该定义为静态方法,但是可能在代码中只使用了一次,因此,静态方法完全可以是模块而不是可重用代码。
[
收藏
]
[返回顶部]
[打印本页]
[关闭窗口]
相关主题:
EXCEL文档导入SqlServer 数据库实例
如何用c# web编程 探测FTP 端口是否开放
.net C# csharp 函数重载
网友评论:
正在加载……
发表评论
*评论者:
主页:
标题:
*内容:
【声明】 地球黑匣子网刊载的资讯及其他内容均由网友提供分享 并且纯属作者个人观点,不表示地球黑匣子网同意其说法或描述,仅为提供更多信息,也不构成任何建议。网友转载请注明原作者姓名及出处。如有侵犯到您的版权,请与我们联系,我们会马上进行重新整理!
最新日志列表
几种典型的面向对象开发方法
详细设计
什么是“极限编程”?
软件设计师知识总结1
OMT 三种模型
OMT三种模型
软件设计师知识点滴1
ICMP
SISD、MIMD、SIMD、MISD计算机的体系结构的Flynn分类法
客户端数据在三层结构中的更新方式
Telnet
LOC
结构化开发方法与原型化开发方法(原型法)之比较分析
CVS
数据结构受限队列问题
人气主题
运行时错误‘429’ACTIVEX部件不能创建对象
大波MM王紫娇 天涯开博客
常见植物养殖方法:富贵竹怎么养?如何养富贵竹?
C# Socket编程
得到 SQL getDate() 不同日期格式
spread 知识点滴积累
ASP.NET 特点
.NET:七道最经典的asp.net页面传值题
ASP.NET生成静态网页的方法(网络收集)
ASP.NET百问百答
能上QQ不能打开网页解析
电脑族每天必须吃六种食物
.NET C# ListView 设置行高
Javascript与asp.net 实现Ajax多文件无刷新上传(转)
解决在ASP.NET2.0中使用FileUpload上传文件大小设置(转)
声明:本网站部分内容属网民发布和来自于互联网。对于引用、发布、转载和放置的内容(广告、链接、文字、图像或声音),所产生的所有法律责任,都将由信息归属者或者广告厂商提供者承担,并且由此产生的版权、署名权的异议、纠纷,本网站概不承担任何责任,本站转载素材仅供大家欣赏和分享,切勿做为商业目的使用。
Copyright © 地球黑匣子网 2007.06 - 2009 Email:
dqhxzcom@163.com
鲁ICP备07501416号
QQ:254212580
网站管理