惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Vercel News
Vercel News
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
雷峰网
雷峰网
有赞技术团队
有赞技术团队
罗磊的独立博客
博客园 - 叶小钗
Jina AI
Jina AI
博客园 - 司徒正美
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
T
Tailwind CSS Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
人人都是产品经理
人人都是产品经理
Apple Machine Learning Research
Apple Machine Learning Research
阮一峰的网络日志
阮一峰的网络日志
Microsoft Security Blog
Microsoft Security Blog
大猫的无限游戏
大猫的无限游戏
量子位
MyScale Blog
MyScale Blog
V
Visual Studio Blog
博客园 - 聂微东
The Cloudflare Blog
Engineering at Meta
Engineering at Meta
小众软件
小众软件
宝玉的分享
宝玉的分享

博客园 - Tommy's Blog

正则表达式学习 常用的正则表达式字段 BBS List SharePoint Portal Server error message Microsoft TechNet中文网络广播 Learning C# Watched .NET componets [Idea] - online english recite Sample web page designers in China My goal 2005 Some google words PDF library JDK 1.5 notable new features.. Windows Scripting Google SEO digest Wallop invitation Favorite .NET open source projects My registered blogs 定制Internet Explorer扩展界面接口
C# Learning Notes
Tommy's Blog · 2005-02-18 · via 博客园 - Tommy's Blog

virtual, new, override

在 C# 中,默认情况下方法不是虚拟的。若要使方法成为虚拟方法,必须在基类的方法声明中使用 virtual 修饰符。然后,派生类可以使用 override 关键字重写基虚拟方法,或使用 new 关键字隐藏基类中的虚拟方法。如果 override 关键字和 new 关键字均未指定,编译器将发出警告,并且派生类中的方法将隐藏基类中的方法。

在 C# 中,集合类并非必须严格从 IEnumerable IEnumerator 继承才能与 foreach 兼容;只要类有所需的 GetEnumeratorMoveNextResetCurrent 成员,便可以与 foreach 一起使用。省略接口的好处为,使您可以将 Current 的返回类型定义得比 object 更明确,从而提供了类型安全。

for each, in
Tokens f = new Tokens("This is a well-done program.",
         new char[] {' ','-'});
      foreach (string item in f)
      {
         Console.WriteLine(item);
      }

结构与类

定义“索引器”使您可以创建作为“虚拟数组”的类。该类的实例可以使用 [] 数组访问运算符进行访问。在 C# 中定义索引器类似于在 C++ 中定义运算符 [],但前者灵活得多。对于封装类似数组的功能或类似集合的功能的类,使用索引器使该类的用户可以使用数组语法访问该类。

例如,假定您想定义一个类,该类使文件显示为字节数组。如果文件非常大,则将整个文件读入内存是不切实际的,尤其在您只想读取或更改少数字节时。通过定义 FileByteArray 类,您可使文件外观类似于字节数组,但读或写字节时,实际执行的是文件的输入和输出。