用内部类(Nested Class)来模拟多继承
2008-04-05 20:49
288 查看
C#, Java等语言都不支持类的多继承, 也就是说一个类如果已经继承了一个父类了, 那么它就不能再继承其他类了, 这样从某种程度上说丧失了一些重用性. 典型的例子是: ASP.NET中要求所有的控件都必须继承自UserControl, 这样我们自定义的控件就不能直接继承自我们自己的抽象类, 一般做法是在中间引入一个自己的控件基类, 即: MyControl -> MyControlBase -> UserControl.
Interfaces:
public interface ICar
public interface IPlane
public class abstract CarBase : ICar
public class abstract PlaneBase : IPlane
public partial class FlayableCar
public partial class FlayableCar
public partial class FlayableCar
FlyableCar flyableCar = new FlyableCar();
ICar car = flyableCar.Car;
car.Run();
IPlane plane = flyableCar.Plane;
plane.Fly();
Interfaces:
public interface ICar
public interface IPlane
public class abstract CarBase : ICar
public class abstract PlaneBase : IPlane
public partial class FlayableCar
public partial class FlayableCar
public partial class FlayableCar
FlyableCar flyableCar = new FlyableCar();
ICar car = flyableCar.Car;
car.Run();
IPlane plane = flyableCar.Plane;
plane.Fly();
相关文章推荐
- Static Nested Class 和 Inner Class的不同。Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- Anonymous Inner Class(匿名内部类)是否可以继承其它类?是否可以实现接口?【Java面试题】
- Java - 静态嵌套类(Static Nested Class)和内部类(Inner Class)的不同?
- 【Java面试题】11 什么是内部类?Static Nested Class 和 Inner Class的不同。
- Annoymous Inner Class(匿名内部类)是否可以extends(继承)其他类,是否可以implements(实现)interface(接口)
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类?
- 【Java面试题】11 什么是内部类?Static Nested Class 和 Inner Class的不同。
- java面试题之内部类不用愁,看完就理解-什么是内部类?Static Nested Class 和 Inner Class的不同。
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- 什么是内部类?Static Nested Class 和 Inner Class的不同。
- 什么是内部类?Static Nested Class 和 Inner Class的不同
- 匿名内部类 Anoymous Inner Class, 可以继承抽象类,实现接口
- Java的内部类(Inner Class)和嵌套类(Nested Class)的区别
- Java - Anonymous Inner Class(匿名内部类)是否可以继承其它类?是否可以实现接口?
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- C++嵌套类nested class (内部类)
- Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
- 静态嵌套类(Static Nested Class)和内部类(Inner Class)的不同?