类的声明

    在Delphi中,类被当作一个类型来定义。其语法格式:
    type 类名=class(基类)
      {字段声明}
      {方法声明}
      {属性声明}
    end;

    1、Delphi面向对象程序设计,要求对象都由某个基本对象继续而来,即由Class指定父对象。Delphi约定最基本的类是TObject,编程中我们所有的对象声明都是由TObject或由TObject派生的对象继承而来。如:

  Type TPerson = class(TObject)   // 从基类TObject继续声明人员类
   public          
      Name:string;                 // 姓名
      function GetAge:Integer;     // 获取年龄 
    private
      Age:integer;                 // 年龄
    end;
   
  注意:关键词class后的(TObject)可以省略。如:Type TPerson = class与Type TPerson = class(TObject)等效。

  Type TEmployee = class(TPerson)   // 从人员类继续,声明职员类
   public
      Salary:integer;                  // 薪金
      DaptName:string;                 // 部门名称
      procedure Infor;                 // 显示职员信息
      procedure SetSalary(A:Integer);  // 设置薪水
    end;

    2、由TObject继承派生的对象,默认构造函数、析构函数。上述对象TPerson、TEmployee的构造函数、析构函数分别为Creat()和Destroy()。如果要在对象中定义构造函数,要使用关键词constructor。如果要在对象中定义析构函数,要使用关键词destructor和override。如:

  Type TCustomer = class(TPerson)     // 从人员类继续,声明顾客类
   public
      AddressName:string;              //     
      procedure Infor;                 // 显示职员信息
      constructor Creat(Str:string);   // 设置薪水
      destructor Destroy:override;     // 设置薪水
    end;

   3、对象数声明的属性读和写,以及方法(内部的函数、过程),必须在Unit的实现部分(implementation)详细表述。

    function TPerson.GetAge:integer;
    begin
      Result:=Age;
    end;

    procedure TEmployee.Infor;
    begin
      Writeln('姓名',Name,'年龄',GetAge,'部门',DaptName,'薪水',Salary)
    end;

    constructor TCustomer.Creat(Str:string);
    begin
      inherited;               
      Writeln('顾客类的构造函数');
      AddressName:=Str;
    end;

    destructor TCustomer.Destroy;
    begin
      Writeln('姓名:',Name,'的顾客对象被删除');
      inherited Destroy;
    end;
    4、Delphi的每个类的根类都是TObject,如果不指明一个明确的基类,Delphi将自动使用TObject作为基类。例如:
    TMyObject=class                       //   默认基类为TObject
      provate
      ....
      public
      ...
    end;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值