VCL一般不喜欢用抽象类

  许多的C/C++ Framework喜欢使用抽象类来定义父类,然后再在派生类中改写父类以提供实现服务。

  不过VCL Framework基本上不喜欢使用抽象类,因为抽象类有一些问题。第一是Object Pascal 允许程序员创建抽象类对象,这会导致执行时期错误,虽然创建抽象类对象在主义上有问题,但在语法上却是合法的,为了避免产生问题,VCL Framework并不喜欢使用抽象类。第二是Object Pascal 可以使用接口来取代抽象类,而且使用接口设计比较符合现代面向对象的趋势。第三,VCL通常倾向使用Place Holder 方法来实现一些抽象方法。

  摘自《Inside VCL》

你可能感兴趣的:(抽象类)