delphi自己声明类及其调用方法

{type放在interface下的uses引用单元下面} 1 // 声明类
 2 type
 3   TMyclass = class                               //注意这里不能加‘;‘ 因为这是个整体
 4     data: integer;                               //类的域
 5     procedure ChangeData(Value: integer);        // 类的方法(过程)按住Ctrl + shift + c键自动生成函数体
 6     function GetData:integer;                    //类的方法(函数)
 7     // 类的域和方法可以根据自己的需要添加
 8 end;
 9
10 { TMyclass }
11 procedure TMyclass.ChangeData(Value: integer);
12 begin
13   Data := Value;                 //
14 end;
15
16 function TMyclass.GetData: integer;
17 begin
18   result := Data;
19 end;
20
21 // 访问类
22 procedure TForm1.SpeedButton2Click(Sender: TObject);
23 var
24   Myclass: TMyclass;
25   i: integer;
26 begin
27   try
28     myclass := TMyclass.Create;    // 使用前一定要实例化,不然不能用
29     myclass.ChangeData(12);        // 给类的方法赋值,
30     i := myclass.GetData;          // 获取类中
31     showMessage(IntToStr(i));      // {12}
32   finally
33     myclass.Free;                 // 最后需要将使用过的内存释放
34   end;
35 end;

另外,类中还存在两种特殊的方法,分别构造方法(Constructor)和析构方法(Destructor)。
类就是面向对象的思想。

时间: 2024-10-12 13:23:58

delphi自己声明类及其调用方法的相关文章

Delphi中TStringList类常用属性方法详解

//TStringList 常用方法与属性: var List: TStringList; i: Integer; begin List := TStringList.Create; List.Add('Strings1');           {添加} List.Add('Strings2'); List.Exchange(0,1);             {置换} List.Insert(0,'Strings3');      {插入} i := List.IndexOf('String

Spring同一个类中的方法互相调用,注解失效问题的分析和解决

以Transaction注解为例: @Service public class TestService { @Autowired Dao dao; @Transactional public void methodOne(Object o) { dao.save(o); } public void methodTwo(Object o) { methodOne(o); } } 检查事务是否启动: 设置log leve为debug,可以查看是否有下面这个log,判断是否启动了Transaction

spring aop 动态代理批量调用方法实例

今天项目经理发下任务,需要测试 20 个接口,看看推送和接收数据是否正常.因为对接传输的数据是 xml 格式的字符串,所以我拿现成的数据,先生成推送过去的数据并存储到文本,以便验证数据是否正确,这时候要批量调用这些同名方法,我觉得这里可以发展成有潜力的代码. 推送比较好做数据,队友们都写好代码,但是有个问题,方法要的值都大致相同,封装的方式不一致,多人开发,有的封装对象里面,有的直接使用 Map.get(),唉,一千个人一千个哈姆雷特嘛,只好利用反射和动态代理节省自己的代码量,而且这种方式练练手

Delphi按名字调用方法高级解决方案

Delphi按名字调用方法高级解决方案 博客分类: 编程基础 DelphiJ#ASPDOS数据结构 按名字调用方法似乎一直以来都是大家比较关注的技术,在论坛上有一个经典的答复: type    TProcedure = procedure(Test: string) of object; procedure ExecuteRoutine(Obj: TObject; Name, Param: string);  var    PMethod: TMethod;    AProcedure: TPr

Delphi线程类 DIY(把类指针作为参数传进去,就可以执行类里面的方法啦)

Delphi 封装了一个很强大的线程类 TThread, 我们也自己动手制作一个简单的线程类 首先Type一个类 [delphi] view plain copy type TwwThread = class constructor Create; overload; destructor Destroy; override; private m_hThread: THandle;     //线程 m_ThreadID : TThreadID; public procedure Execute

李洪强iOS开发之有参方法的声明实现和调用

// //  main.m //  09 - 有参方法的声明实现和调用 // //  Created by vic fan on 16/7/5. //  Copyright © 2016年 李洪强. All rights reserved. // /** *  C语言函数 *  int sum(int a, int b){ reture a+b; } * 有参有返回值的格式: 带一个参数: 方法的声明 - (返回值类型)方法名: (参数类型)参数名; 方法的实现 - (返回值类型)方法名: (参

Java反射机制demo(五)—获得并调用一个类中的方法

这个demo在使用反射机制操作属性之前,主要原因是因为在.class文件字节码中,方法排在属性的前面. 1,获得一个类中的方法 先看一下方法和运行结果.获取所有的方法使用Class类中getMethos()方法. 待获取的类: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 package

OC类与对象实例化,类之间的方法调用小题目

两个OC类与对象实例化题目 要求: * 类名.属性名.属性类型.方法名.方法参数.方法返回值自拟 * 自己写main函数测试设计是否合理 /* 1.设计一个"狗"类 1> 属性 * 颜色 * 速度(单位是m/s) * 性别 * 体重(单位是kg) 2> 行为 * 吃:每吃一次,体重增加0.5kg,输出吃完后的体重 * 吠(叫):输出所有的属性 * 跑:每跑一次,体重减少0.5kg,输出速度和跑完后的体重 * 比较颜色:跟别的狗比较颜色,如果一样,返回YES,不一样,返回NO

<02>【掌握】01-类的声明和实现+【掌握】13-创建一个对象并访问成员变量+【掌握】14-无参方法声明实现及调用+【掌握】15-有参方法声明实现及调用+

[掌握]01-类的声明和实现 类: 一类事物共同特征和行为的抽象 大卡车 小轿车 挖掘机 车类: Car 共同的特征(属性): 颜色 速度 轮子 共同的行为: 跑 停止 对象: 类的具体的个体 东风21D(车类的对象) 解放大卡车(车类的对象) BYD (车的对象) 时风 (车的对象) 2.类的定义 结构体定义 struct Student{ }; ---->定义一个Student 结构体 类的定义分为两部分: 1)类的声明(规定当前类的:类名.属性.行为) @interface 类名:父类名