1.TCountButton.GetTotal是类方法。对应的对象虽然撤销了,但该类模板是一直存在的。就象动态建立一个对象,使用TCountButton.Create一样,这也是类方法。
2.finalization和initialization在一个unit中是对应的,是两个区段。可以有initialization但没有finalization。但不能有finalization而没有initialization。另外的问题:
1.类的对象、实例其实是一个概念。因为没有好好地在各种语言、人群中统一起来。一般c++中称实例的多。object pascal中称对象的多。
2.
inherited create: 调用父类的的create方法。
inherited : 调用父类中的与本方法同名且具有相同参数形式的方法。
比如,你的类TCountButton继承于TButton,但overload了两个constructure。一个参数形式与TButton相同,那么在实现该构造器时,可直接引用inherited,调用父类的构造器。
而实现另一个与父类参数形式不同的构造器时,必须引用inherited create。因为父类中没有这种形式的构造器。
3.,4.一个类当然可以建立多个对象,通过不同的引用指针来调用。一点都不乱。
b1,b2:TCountButton; //声明了两个指针,由编译器分配指针的空间,程序执行时不执行这些的。但指针指向哪里还未定 nil
...
b1:=TCountButton.Create(self); //建立一个新对象,分配对象内部各部分的空间。并让b1指向该空间地址。
b2:=TCountButton.Create(self);

解决方案 »

  1.   

    TO:lovelyfirefox
    这些问题的解决方法大多数书上都有的,请问你有看书吗?能自己解决就自己解决吧。我想有些基础概念之类的问题用不着放到这儿来吧?小弟口袋里的银子有限!抱歉!
      

  2.   

    这是你概念不清楚的缘故,找这方面的书看看吧。
     严黎斌() 基本上说得很清楚了,我补充一点:
      类的对象(也就是类的实例)相当于是类的变量。举个例子:
      var i, j, k : integer;
      类的对象和类的关系就相当于 i 和 Integer 的关系。 i, j, k 都是 integer 类型;
      所以类也能创建多个对象(变量)。
      
      

  3.   

    to hzjf
    大家帮帮忙,我是不会,周围没有一个同学学它,没人一起讨论,所以才问,难道想学提问不对吗?