上篇写了继承和接口,这里说下继承和组合,本片主要就一中情况来讲--------很多个类都要使用同一组静态方法时,是写一个包含这些方法的基类,还是编写一个包含这些静态方法的帮助类。如:
public class Base {
private static int a = 0;
public int GetA() {
return a++;
}
}
public class Class1 : Base {
}
public class Class2 : Base {
}
--------------------------------------------------------------
public class Class1{
private int _a = 1;
public int A {
get {
return Helper.Get(_a);
}
}
}
public class Class2{
private int _b = 1;
public int B {
get {
return Helper.Get(_b);
}
}
}
public static class Helper {
public static int Get(int i) {
return i;
}
}
推荐使用帮助类,这样就减少了类之间的耦合度而且使类显得没这么臃肿,提高了代码的可重用性,如果帮助类不只在本命名空间内使用的话,最好使用internal来限制该帮助类在本命名空间内看访问,不让外界使用。如果你使用放射器看.NET的类库的时候就会发现,内部有很多一部分时候内部类,是我们不能使用的类,就像类的私有成员一样,只能在内部使用。
分享到:
相关推荐
付哲C课程继承与功能组合.zip
付哲-C 课程-继承与功能组合
03_组合继承.html
组合和继承的主要目的是为了代码的重用。组合是将其他类的对象作为成员使用,继承是子类可以使用父类的成员方法。
UML类图关系泛化、继承、实现、依赖、关联、聚合、组合.doc
2019-11-25 王争设计模式之美进入课程讲述:冯永吉时长 10:51大小 9.95M在面向对象编程中,有一条非常经典的设计原则,那就是:组合优于继承,多用
它的基本思想是使用原型链继承原型上的属性和方法,通过盗用构造函数继承实例属性,这样的好处就是可以把方法定义在原型上复用,每个实例又有自己的属性。 function SuperType (name) { this.name = name; this....
ch12 组合与继承
C++继承与组合类的综合案例.cpp
Line是继承Point类的,完成了一些小功能
编程思想的第十四章,代码,本人亲测通过后才上传的 主要是讲组合和继承的
使用js实现继承的七种方式,详细讲解了js中的原型链继承,构造函数继承,组合继承(经典继承),原型式继承,寄生式继承,寄生组合式继承,以及ES6中的继承,描述原理以及实现和要点概述等。
android 7.Android里的类别继承及对象组合
目录 前言准备总结继承的n种方式原型式继承原型链式继承借用构造函数(类式继承)组合继承寄生组合式继承结束语 前言 准备 总结 继承的n种方式 原型式继承原型链式继承借用构造函数(类式继承)组合继承寄生组合...
第10章 类的继承与组合... 78 10.1 继承... 78 10.2 组合... 80 第11章 其它编程经验... 82 11.1 使用const提高函数的健壮性... 82 11.2 提高程序的效率... 84 11.3 一些有益的建议... 85 参考文献... 87 附录A :...
前 言 ....................................................................................................................................6 第 1 章 文件结构..............................................
第10章 类的继承与组合... 78 10.1 继承... 78 10.2 组合... 80 第11章 其它编程经验... 82 11.1 使用const提高函数的健壮性... 82 11.2 提高程序的效率... 84 11.3 一些有益的建议... 85 参考文献... 87 ...