从调用者角度可分为:普通方法(只能被对象调用),类方法(可以被对象和类调用,声明时带class前缀,实现时不能依赖于任何实例)。
从调用机制上分:
静态方法:一般方法,无后缀。
虚方法:可以在子类中对其覆盖(override),声明时带virtual或dynamic后缀。
普通虚方法:必须有实现部分,即使只有begin...end。
抽象方法:只有声明,没有实现。必须在子类中覆盖并实现后才能调用。又称纯虚方法,声明时在virtual或dynamic后加abstract后缀。
从用途来分
重载方法:原过程或函数重载为函数和过程皆可。如位于相同类,必须都加上overload后缀;如分别在父类和子类中,父类中可以不加。如果父类的方法是虚方法,应在重载时加reintroduce。不能再published区中出现多个重载。
消息方法:解惑并处理特定的一个消息,使用关键字message声明。
事件驱动方法:用来驱动一个时间,一般位于protected域,命名规则是用“Do”替代或者直接去掉事件名称的“On”,常常被声明为dynamic虚方法。