★★★关于方法定义关键字的说明:<br> 如果在过程定义声明时包括了的关键字的含义:<br> static 表示是静态方法;静态方法是方法的缺省类型,不能被覆盖;<br> virtual 表示是虚拟方法;<br> dynamic 表示是动态方法;<br> 这两类方法的共同点是都可以被覆盖(override),区别仅在于运行时调用方法时的派发机<br>制,virtual方法为执行速度做了优化,而dynamic方法则为代码大小做了优化;经常被覆盖的<br>方法应该定义为virtual方法;<br> message 表示是消息处理方法;在关键字message后面的值指明了这个方法要响应的消息;<br>用消息处理方法来响应Windows的消息,这样就不用直接来调用它;<br> override 表示是覆盖方法;要求祖先类中必须有该方法的定义,并且参数的顺序和类型<br>及返值的类型必须匹配;用于扩展祖先类中的该方法而不是取代它(如不调用祖先类中的该方<br>法则等同于取代);<br> overload 表示是重载方法;用于一个类中有许多同名的方法带着不同的参数表的情形;<br>(属性的读写方法不能被重载);<br> abstract 表示是抽象方法;是没有实现的方法,并且必须是virtual或dynamic方法,即<br>在abstract前面必须有virtual或dynamic关键字,其实现部分在派生类中;如<br> procedure DoSomething; virtual; abstract;<br> reintroduce表示是重新声明的方法;用于方法的名称与祖先类中的某个方法名称相同的情形;<br>