zoukankan      html  css  js  c++  java
  • Delphi的类和对象(七)- 继承

    继承就是根据已有的类创建一个新类的过程,新类可继承父类可见的成员,并根据需要添加更多成员。

    父类是最为抽象,最具有共性的一个类,子类的功能就是完善与拓展父类。

    子类可以增大从父类继承过来的成员的可见性,如果父类中成员A 可见性为protected ,在子类中就可以将A 修改为public ,只需要在子类的公共成员区域重新声明A 即可。

    子类不能降低父类的类成员可见性。父类中的published 在子类中也只能是 published。

    类中方法的定义一定要在变量的定义之后。

    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;
    
    type
      TForm1 = class(TForm)
        Button1: TButton;
        Button2: TButton;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
      end;
    
      //下面自定义了两个类, TChild 继承于 TBass
      TBass = class
        procedure msg1;
      end;
    
      TChild = class(TBass)
        procedure msg2;
      end;
    
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    { TBass }
    procedure TBass.msg1;
    begin
      ShowMessage('is Bass');
    end;
    
    { TChild }
    procedure TChild.msg2;
    begin
      ShowMessage('is Child');
    end;
    
    
    
    //测试1: 父类只有一个方法 msg1
    procedure TForm1.Button1Click(Sender: TObject);
    var
      b: TBass;
    begin
      b := TBass.Create;
      b.msg1; {is Bass}
      b.Free;
    end;
    
    //测试2: 子类有两个方法, 自己一个 msg2, 还继承了一个 msg1
    procedure TForm1.Button2Click(Sender: TObject);
    var
      c: TChild;
    begin
      c := TChild.Create;
      c.msg1; {is Bass}
      c.msg2; {is Child}
      c.Free;
    end;
    
    end.
  • 相关阅读:
    poj 2362 Square (dfs+剪枝)
    三种素数筛法汇总
    2009’河北省高教网络技能大赛一网站建设部分
    寒假每一天
    寒假每一天
    寒假每一天
    寒假每一天
    统计文本文件
    寒假每一天
    寒假每一天
  • 原文地址:https://www.cnblogs.com/fansizhe/p/12723819.html
Copyright © 2011-2022 走看看