新时代的开端-DelphiKTop讨论区.DOC

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
新时代的开端-DelphiKTop讨论区

新时代的开端: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; vObj.F

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档