网站开发岗位分析,赞友商城电商平台排名第几,网络服务营销,广州网站改版设计公司7.1.4 创建对象
与其他流行的编程语言比较之后#xff0c;让我们回到 Pascal#xff0c;看看如何使用类。
一旦定义了类#xff0c;我们就可以创建一个该类型的对象#xff0c;代码片段如下#xff08;本节所有代码提取自 Dates1 示例#xff09;那样#xff1a…7.1.4 创建对象
与其他流行的编程语言比较之后让我们回到 Pascal看看如何使用类。
一旦定义了类我们就可以创建一个该类型的对象代码片段如下本节所有代码提取自 Dates1 示例那样
varADay: TDate;
begin// 创建ADay : TDate.Create;// 使用ADay.SetValue(1, 1, 2020);if ADay.LeapYear thenShow(Leap year: ADay.Year.ToString); 创建对象所用的表示法并不特别但很强大。我们可以编写一个复杂的函数比如LeapYear然后访问每个TDate对象的值就像这个类型是原始数据类型一样。
请注意ADay.LeapYear是一个类似于ADay.Year的表达式尽管第一个是一个函数调用第二个是直接数据访问。正如我们将在第10章中看到的那样Object Pascal用于访问属性的表示法也是相同的。 注解 在大多数基于 C 语言语法的编程语言中调用不带参数的方法需要使用括号如 ADay.LeapYear()。这种语法在 Object Pascal 中也是合法的但很少使用。不带参数的方法在调用时一般不加括号。这与许多语言中的做法大相径庭在许多语言中对函数或方法的引用不带括号返回的是函数地址。正如我们在第 4 章 过程类型 一节中所看到的Object Pascal 使用相同的符号来调用函数或读取其地址这取决于表达式的上下文。 上面代码片段的输出相当简单
Leap year: 2020 让我再次将创建对象与用其他编程语言编写的类似代码进行比较
// C# and Java languages (object reference model)
Date aDay new Date();
// C language (two alternative styles)
Date aDay; // Local allocation
Date* aDay new Date(); // Manual reference