• C#2.0至4.0 的一些特性


    罗列清单备查

    一、C#2.0

    1. Partial class 分部类

    file1.cs

    using System;
    public partial class MyClass
    {
        public void MyMethod1()
        {
            Console.WriteLine("MyMethod1 人工编写的代码");
        }
    }

    file2.cs

    using System;
    public partial class MyClass
    {
        public void MyMethod2()
        {
            Console.WriteLine("MyMethod2 通常是自动生成的代码,如webService 之类");
        }
    }

    编译:

    csc /out:lib.dll  /t:library file1.cs file2.cs
    csc /out:App.exe /r:lib.dll app.cs

    2. Generics 泛型

    3.  Static classes 静态类

    静态类中不能有实例方法,没有实例构造器,可以有静态构造器,功能类似于面向过程语言中 Module(模块)的功能

    using System;
    public static class UtilityClass
    {
        public static void Foo()
        {
            Console.WriteLine("Hello");
        }            
    }
    using System;
    class App
    {
        static void Main()
        {
            UtilityClass.Foo();
        }
    }

    可以看出静态类是没有实例构造器的

    非静态类是有实例构造器的

    4. iterator 迭代器

    5. Anomymous Methods 匿名方法

    6. Nullable types 可空类型

    7. ?? 操作符

    object nullObj = null; 
    object obj = new Object(); 
    return nullObj ?? obj; // returns obj

    二、 C# 3.0

    1. LINQ(language-integrated query) 

    2. Object initializers 对象初始化器

    3. Colletion initializers 集合初始化器

    4. Anomymous types 匿名类型 (var)

    5. Lambda expressions Lambda 表达式

    6. Automatic properties 自动完成属性

    7. Extension methods 扩展方法

    三、 C# 4.0

    1. Optional parameters and named arguments 可选参数和命名参数

    四、参考资料

    C# 2.0: MSDN   Wikipedia

    C# 3.0: MSDN   Wikipedia

    C# 4.0: MSDN   Wikipedia   What's New On C# 4.0 

    2015-1-2 补充一幅 C#演化图

    未完

  • 相关阅读:
    NOIP模拟测试2「排列 (搜索)·APIO划艇」
    Linux运维基础
    Linux之权限详解
    Linux之特殊符号与正则表达式
    Linux之命令进阶
    Linux分区的几种方案
    开启MySQL远程访问权限 允许远程连接
    Linux命令
    win10 激活(亲测可用)
    帮你解决无法早起的焦虑-顺便撸羊毛
  • 原文地址:https://www.cnblogs.com/Aphasia/p/4191649.html
Copyright © 2020-2023  润新知