第1章 .NET与C#
1.1 .NET简介
1.1.1 什么是.NET
1.1.2 为什么要提出.NET
1.1.3 .NET能带来什么
1.1.4 .NET的组成
1.2.NET的技术核心
1.2.1 XML语言
1.2.2 Web服务
1.2.3 .NET框架
1.3 为什么需要C#
1.4 C#的主要特点
1.4.1 简单
1.4.2 面向对象
1.4.3 类型安全
1.4.4 版本控制
1.4.5 现代
1.4.6 灵活与兼容
1.5 C#程序的编译和执行
1.5.1 即时编译器JITer
1.5.2 及时编译执行的效率
第2章 C#开发环境
2.1 VisualStudio.NET集成开发环境介绍
2.1.1 VisualStudio.NET开发环境
2.1.2 VisualStudio.NET集成开发环境的新内容
2.1.3 VisualStudio.NET常用窗口对象简介
2.2 VisualStudio.NET菜单介绍
2.2.1 File菜单组
2.2.2 Edit菜单组
2.2.3 View菜单组
2.2.4 Proiect菜单组
2.2.5 Build菜单组
2.2.6 Debug菜单组
2.2.7 Tools菜单组
2.2.8 Window菜单组
2.2.9 .NET开发环境中的工具条
2.3 .NET下开发程序的一般步骤
第3章 C#语言基石出
3.1 绪论
3.1.1 自动内存管理
3.1.2 类型
3.1.3 预定义类型
3.1.4 数组类型
3.1.5 统一系统类型
3.1.6 语句
3.1.7 类
3.1.8 结构类型
3.1.9 接口
3.1.1 代理(delegates)
3.1.11 枚举
3.1.12 命名空间
3.1.13 属性
3.1.14 索引器
3.1.15 事件
3.1.16 Attribute
3.2 语法结构
3.2.1 预处理
3.2.2 标识符
3.2.3 关键字
3.2.4 数据类型
3.2.5 操作符和标点符号
3.3 基本概念
3.3.1 声明
3.3.2 成员
3.3.3 成员可见性(member-access)
3.3.4 存取控制
3.4 类型
3.4.1 值类型
3.4.2 默认值
3.4.3 简单类型
3.4.4 引用型
3.5 变量
3.5.1 变量的分类
3.5.2 变量默认值
3.5.3 变量明确赋值
3.5.4 变量引用(variable-reference)
3.6 类型转换
3.6.1 隐式转换
3.6.2 显式转换
3.7 表达式
3.7.1 表达式的分类
3.7.2 运算符
3.7.3 加括号的表达式
3.7.4 表达式调用
3.7.5 元素访问(element-access)
3.7.6 this访问
3.7.7 Base访问
3.7.8 递增和递减操作符
3.7.9 new操作符
3.7.1 typeof操作符
3.7.11 sizeof操作符
3.7.12 checked和unchecked操作符.
3.7.13 一元表达式
3.7.14 二元表达式
3.8 语句
3.8.1 终点和可达
3.8.2 分程序
3.8.3 空语句(empty-statement)
3.8.4 标号语句(1abeled-statement).
3.8.5 声明语句(declaration-statement)
3.8.6 表达式语句(expression-statement)
3.8.7 条件语句(selection-statement)...............
3.8.8 循环语句(iteration-statement)
3.8.9 转至语句(Jump)
3.8.1 checked和unchecked语句
3.8.11 Lock语句
3.9 命名空间
3.9.1 编译单元
3.9.2 命名空间声明(namespace-declaration)
3.9.3 Using命令
3.9.4 命名空间的应用
3.1 类
3.1.1 类声明
3.1.2 类成员
3.1.3 常量(constant)
3.1.4 域
3.1.5 方法
3.1.6 构造函数
3.1.7 析构函数
3.1.8 静态构造函数
3.11 结构
3.11.1 结构声明
3.11.2 结构成员
3.11.3 结构例子
第4章 面向对象的程序设计
4.1 面向对象的基本概念
4.1.1 面向对象的技术的由来
4.1.2 基本概念
4.2 对象的模型技术
4.2.1 对象模型
4.2.2 动态模型
4.2.3 功能模型
4.3 面向对象的分析
4.3.1 论域分析和应用分析
4.3.2 Coad和Yourdon面向对象的分析过程
4.4 面向对象的设计
4.4.1 高层设计和底层设计
4.4.2 Coad和Yourdon面向对象的设计过程
4.5 类的基础知识
4.5.1 类名与class类型
4.5.2 类名作用域
4.5.3 类对象与类成员
4.5.4 内部函数
4.5.5 静态成员
4.5.6 成员作用域
4.5.7 基类与派生类存取
4.5.8 虚基类
4.6 构造函数
4.6.1 默认构造函数
4.6.2 构造函数的重载
4.6.3 构造函数的调用次序
4.6.4 类的初始化
4.7 析构函数
4.7.1 析构函数的调用
4.7.2 atexit、#pragmaexit与析构函数
4.7.3 exit与析构函数
4.7.4 abort与析构函数
4.7.5 虚析构函数
4.8 类的方法
4.8.1 方法参数
4.8.2 方法重载
4.8.3 方法覆盖
4.8.4 类的属性
4.9 索引
4.1 事件处理
4.11 使用修饰符
4.11.1 类修饰符
4.11.2 成员修饰符
4.11.3 存取修饰符
第5章 C#结构、文件处理
5.1 C#的结构及其用法
5.1.1 结构的定义
5.1.2 结构的初始化
5.1.3 嵌套结构
5.2 结构数组
5.2.1 结构数组的声明
5.2.2 结构数组的访问
5.2.3 建立结构数组
5.3 数组结构成员
5.4 顺序文件
5.4.1 为什么要使用磁盘
5.4.2 磁盘文件访问类型
5.4.3 顺序文件的操作
5.4.4 文件的打开和关闭
5.4.5 写文件
5.4.6 追加文件
5.4.7 读文件
5.5 随机文件
5.5.1 随机文件记录
5.5.2 打开随机文件
第6章 域、属性索引器
6.1 属性
6.1.1 为什么需要属性
6.1.2 属性的定义
6.1.3 属性的读/写类型
6.1.4 属性的底层实现
6.1.5 属性的继承
6.2 索引器
6.2.1 索引器的定义
6.2.2 索引器的底层实现
6.2.3 多索引器例题
6.3 域
6.3.1 声明
6.3.2 静态域和非静态域
6.3.3 只读域
6.3.4 域的初始化
6.4 复习题
6.5 本章小结
第7章 接口
7.1 组件编程技术
7.1.1 应用程序的体系结构
7.1.2 组件
7.1.3 组件化程序设计
7.2 接口定义
7.2.1 声明
7.2.2 接口的继承
7.3 接口的成员
7.3.1 接口成员的定义
7.3.2 对接口成员的访问
7.3.3 接口成员的全权名
7.4 接口的实现
7.4.1 类对接口的实现
7.4.2 显式接口成员执行体
7.4.3 接口映射
7.4.4 接口实现的继承机制
7.4.5 接口的重实现
7.5 抽象类与接口
7.6 本章小结
7.7 复习题
第8章 异常处理
8.1 什么是异常
8.2 异常的基本思想
8.3 C#的异常处理机制
8.3.1 C#与C++异常处理的区别
8.3.2 引发异常的条件
8.4 异常处理的实现
8.4.1 try-catch组合
8.4.2 try-finally组合
8.4.3 try-catch-finally组合
8.5 异常处理规则
8.6 throw语句
8.7 用户自定义异常
8.8 异常处理与跳转语句
8.9 本章小结
8.1 复习题
第9章 C#控件
9.1 Windows下的编程
9.1.1 Windows下编程要注意的几个问题
9.1.2开发一个Windows下的应用程序
9.2 常用的form控件
9.2.1 控件的基本概念
9.2.2 从哪里得到控件
9.2.3 控件的使用方法简介
9.2.4 菜单、工具栏、状态栏、和图标的使用
9.3 本章小结
第1章 图形开发
1.1 Visualcsharp画图基本概念
1.1.1 上下文设备,句柄和Graphics对象
1.1.2 画一条直线
1.1.3 画图和填充
1.1.4 构造Regions
1.1.5 Ellipses和Arcs
1.1.6 Drawing,Positioning和Cloninglmages
1.1.7 Polygons
1.1.8 Pens,Lines和Rectangles高级使用
1.1.9 Regions高级使用
1.1.1 Paths
1.2 Graphics类
1.2.1 Graphics概述
1.2.2 Rectangle,Size和Point
1.2.3 Graphics画图
1.3 Pen,Font,Brash,Bitmap和Color简介
1.3.1 Brash
1.3.2 Bitlnap
1.3.3 Font和Color
1.3.4 Pen
1.4 图形编程
1.4.1 创建应用程序框架
1.4.2 界面设计
1.4.3 代码设计
1.4.4 程序运行结果
第11章 数据库
11.1 数据库
11.1.1 数据库简介
11.1.2 数据库的体系结构
11.1.3 数据库的操作过程
11.2 数据库世界的世界语——SQL
11.2.1 数据定义语言(DDL)
11.2.2 数据控制语言(DCL)
11.2.3 数据处理语言(DML)
11.3 ADO编程
11.3.1 基本的ADO编程模型
11.3.2 使用ADO的对象实现ADO的编程模型
11.4 ADO数据库编程开发应用实例
11.4.1 设计应用程序
11.4.2 编译执行
11.5 本章小结
第12章 网络
12.1 网络基本知识
12.1.1 网络发展的历史
12.1.2 网络参考模型
12.1.3 Client/Server编程模式
12.2 VS.NET的Socket
12.2.1 建立Socket
12.2.2 连接一个Socket
12.2.3 使用Socket类
12.2.4 Socket调用过程
12.3 Socket类
12.3.1 Socket构造函数
12.3.2 绑定地址Bind()
12.3.3 建立连接Connect()
12.3.4 监听服务请求Listen()
12.3.5 发送数据Send()和SendTo()
12.3.6接收数据Receive()和ReceiveFrom()
12.3.7 关闭Close()
12.3.8 Select()
12.4 网络上的数据表示
12.5 Socket编程实例
12.5.1 创建新项目
12.5.2 添加命名空间
12.5.3 设计几个辅助函数
12.5.4 添加控件
12.5.5 接收和发送数据
12.5.6 退出程序
12.5.7 执行程序
12.6 TCP/IP网络应用
12.6.1 获取本机名和IP地址
12.6.2 TCP网络时间服务应用+
12.6.3 UDP组播网络时间服务应用
12.7 本章小结
12.8 复习题
第13章 多线程
13.1 线程基本知识
13.1.1 线程与进程
13.1.2 线程是如何工作的
13.1.3 线程的优点
13.2 工作线程
13.2.1 Windows的线程实现函数
13.2.2 启动线程
13.3 多线程编程的常用类
13.3.1 线程同步
13.3.2 Thread类
13.3.3 Mutex类
13.3.4 AutoResetEvent和ManualResetEvent
13.3.5 管道(Monitor)
13.3.6 Interlocked
13.3.7 ThreadP1
13.3.8 ReaderWriterLock类
13.4 多线程编程
13.4.1 界面设计
13.4.2 设计几个线程函数
13.4.3 增加Mutex类
13.4.4 增加Thread类
13.4.5 启动线程
13.4.6 关闭线程
13.4.7 线程清除工作
13.4.8 程序运行
13.5 本章小结
13.6 复习题
第14章 应用配置和组件
14.1 条件编译
14.1.1 预处理器的用法
14.1.2 条件(Conditional)属性
14.2 XML中的文档注释
14.2.1 描述一个成员
14.2.2 添加备注和列表
14.2.3 提供例子
14.2.4 描述参数
14.2.5 描述属性
14.2.6 编译文档
14.3 代码版本化
14.3.1 .NET组件的版本号
14.3.2 私有.NET组件
14.3.3 共享.NET组件
14.4 设计组件
14.4.1 设计一个用VisualC#编写的组件
14.4.2 设计一个用VB写的组件
14.5 组件的调用
14.6 本章小结
第15章 代码调试和安全
15.1 C#代码调试任务
15.1.1 创建一个调试版本
15.1.2 选择可执行程序
15.1.3 设置中断点的4种方法
15.1.4 逐句测试C#程序
15.1.5 添加可执行程序到一个进程
15.1.6 修改当前变量
15.1.7 处理异常事件
15.1.8 用JIT调试C#程序
15.1.9 调试C#组件
15.2 中间语言分解器的使用
15.3 .NET与COM互操作性
15.3.1 在COM中使用.NET组件
15.3.2 在.NET中访问COM对象
15.4 平台请求服务
15.5 C#支持的不安全代码
15.6 代码访问安全机制
15.6.1 代码类型安全的认定
15.6.2 标准许可与身份许可