C#程序设计语言 第一章 介绍 (1)

Hejlsberg,A. 著

机械工业出版社

2011年


C#程序设计语言 第一章 介绍 (1)_第1张图片


序言

发展历史 2000年 .NET发布

结合了托管代码的本地执行

用于程序间通信的XML消息机制

一个值类型,一个引用类型,的区别是什么?

结构和类的区别?

一个是从 System.ValueType 继承的类型, 另一个 不是从 System.ValueType 继承的类型

C# 迭代性,真正的闭包,C#编译器实现的纯语言特性,而不是平台自带特性

C#2.0 泛型、匿名委托

C#3.0  标准化的查询操作符,lambda表达式,扩展方法,运行时访问表示式树的能力,LINO特性

C#4.0  动态值


介绍

see sharp

ECMA International

ECMA-334

ISO/IEC

ISO/IEC 23270

同时遵循了这两个标准

组件提供了 属性、方法、事件 的编程模型;

C# 垃圾收集,异常和粗粒,结构化且可扩展的方式来检测错误和回复,类型安全,防止读取未初始化的变量,数组越界,类型转换检查,

统一的类型系统 unified type system

int double 都是 从 根类型 object 继承而来, 有一些通用操作,一致的方式进行保存、传递、操作

C# 支持用户自定义引用类型,值类型,

C# 类库,重视版本兼容性,

virtual 和 override 修饰符,

方法重载 的规则

接口成员显示声明的支持

函数式编程语言,类型推导、lambda表达式、一元查询推导式 面向对象程序员可以利用函数式编程的思想来增加语言的表达能力。

hello.cs

using System;

class Hello{

static void Main(){

Console.WriteLine("Hello, World");

}

}

csc hello.cs

Hello类 只有一个成员方法 Main

static 修饰符

实例方法,可以通过 关键字 this 来 引用自身

静态方法在使用时,无需引用某个 特定对象,

静态方法 main 是程序的入口点,

using 指令;System 命名空间;

命名空间;提供层次化的方式,来组织C#程序和类库,命名空间;可以包含 类型 和 其他命名空间

例如,System 命名空间;包括Console类 和 IO 命名空间  Collection命名空间

通过using指令引用某个命名空间时,你就可以不加前缀使用这个命名空间里的类型,

即 System.Console.WriteLine 可简写为 Console.WriteLine

程序输出是由,命名空间System 里的Console类 的WriteLine 方法产生的,

默认情况下,C#编译器会自动引用这个由.NET框架类库提供的类

.NET 框架就是C#的运行库,

你可能感兴趣的:(C#程序设计语言 第一章 介绍 (1))