- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
新时代的开端-DelphiK.Top討論區
新时代的开端:DELPHI.NET- 语言篇
文/黄忠成(2004/1/1,原文刊登于PC 计算机传真月刊)
DELPHI.NET
在经过近兩年的漫长等待后,Borland 终于在2003 年的耶诞前夕释出了DELPHI 8
for .NET Framework 的正式版本,此举不但粉碎了DELPHI 已死的揣测,也正式将DELPHI
使用者带入了.NET 的世界。藉由VCL.NET,原DELPHI 使用者可以延用以往所开发的
组件或是程序,用几乎相同的方式撰写.NET Windows Application。除此之外,
DELPHI.NET 也支援.NET WinForm 及ASP.NET 的应用程序开发,这就像是DELPHI 一
贯的传统:支持最多的环境,提供多样化的开发技术,让使用者得到最大的应用空间。
当然,不可否认,DELPHI.NET 毕竟是一个新的开发环境及一个加强后的DELPHI 语言,
要說完全无痛升级是不可能的,程序设计师应该要有一个认知,在Windows 时代,API
是不可缺的知識,在今日的.NET 时代也不例外,了解.NET Framework 是基本的要求。
针对DELPHI.NET 所提供的各种新功能及新语言特色,笔者规画了一系列文章,希望
能帮助原DELPHI 的使用者快速的进入DELPHI.NET 的世界,现在就让我们开始这一趟
旅程吧。
Imporved! Namespace(命名空间)
事实上,Namespace 并非是在DELPHI.NET 中第一次出现,早在DELPHI 时代就已具
备基本的Namespace 概念,只是当时此技术尚未成熟,大多數时候只是用來解决模糊呼
叫或是定义等问题,下面的程序代码片段是在DELPHI 时代使用该技术的范例。
Dialogs.ShowMessage(AMsg);
当时,这种技术顶多只能称之为Unit 的分割,離真正的Namespace 尚有段距離。为了
符合CLS 规格,DELPHI.NET 加入了真正的Namespace 机制,使编译后的Assembly 能
为其它CLS 兼容语言所用,其基本用法与以往大致相同。
unit MyCompany.MyProduct.Unit2;
interface
uses Borland.Vcl.Classes,Borland.Vcl.SysUtils;
与DELPHI 相同,DELPHI.NET 的Unit 檔名需与unit ...部份同名,另外原先的Classes、
SysUtils 等Unit 也都纳入了Borland.Vcl 这个Namespace 之中,不过使用者并不需特别
修改以往的程序來符合这个改变,藉由编译器预设Namespace 搜寻功能,使用者仍可使
用uses Classes,SysUtils 方式來处理,编译器自会代为转换。提醒讀者,目前DELPHI.NET
仍只支持在一个Unit 中定义单一Namespace,并不允许同一Unit 拥有多个Namespace。
另外DELPHI.NET Unit 也不支持類似C#等语言中以明确定义代替uses 的方式,简单的
說就是要引用Unit2 才能使用其中的定义,不能省略掉引用Unit2 部份,直接使用
Unit2.xxx 方式宣告。
New! 成员视界
在DELPHI.NET 中,除了原有的private、protected、public、published 四个视界外,还
加入了strict private、strict protected 兩个新的成员视界,此举是为了符合CLS 规格。原先
的DELPHI 中,private、protected 在同一Unit 中是被视同为public 视界的,下面的程序代码
說明了此点。
type
TMyClass = class
private
FData:Integer;
end;
...............
vObj := TMyClass.Create;
vObj.FData := 100; //OK!
这个特性仍被延用至DELPHI.NET,事实上它们被对应至Assembly or Family、Assembly
and Family 兩个CLS 所规范的视界,而strict private 及strict protected 则对应到真实的
private、protected 兩个视界,表一列出目前DELPHI.NET 的视界对应及存取限制。
TMyClass = class
strict private
FPrivateData:Integer;
private
FData:Integer;
end;
.............
vObj := TMyClass.Create;
v
您可能关注的文档
- 李成琦出生日期1999年08月05日.doc
- 教师培训选课指南与培训须知-上海市实验学校西校.doc
- 教师手册1-2.doc.doc
- 杏壇中學.ppt
- 搜索引擎使用技巧-河南科技大学图书馆.ppt
- 教案副页-辽宁石化职业技术学院.doc
- 材料科学与工程系-TsinghuaUniversity.doc
- 教育部顧問室-創造力教育中程發展計畫-樹德科技大學.doc
- 教育部補助大專校院推動學校健康促進實施計畫.doc
- 東京葵ライオンズクラブ.doc
- TSTIC 120083-2023 电化学储能电站电池系统数字化运维服务要求.pdf
- 病虫害防治工作总结.pdf
- TSTIC 120085-2023 船舶拖带服务规范.pdf
- 健身安全课件图片最新完整版本.pptx
- (新统编版)语文二年级下册 第六单元 大单元教学计划.docx
- TSTIC 120081-2023 港口与航道工程施工总承包服务规范.pdf
- THEBQIA 304-2024 型钢智能检测设备设计规范.pdf
- 健身房消防培训课件最新完整版本.pptx
- 广东省深圳市红山中学2024-2025学年高二(下)第一次段考语文试卷(含答案).docx
- 广东省深圳市建文外国语学校两学部2025届高三下学期二模物理试题(含答案).docx
文档评论(0)