《C#编程起步》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:(美)Herbert Schildt著;长春亿特译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2002
  • ISBN:7115100691
  • 页数:441 页
图书介绍:

第1章 C#基础 1

1.1 C#的家族史 2

1.1.1 现代编程时代的开始 2

1.1.2 OOP和C++的诞生 3

1.1.3 因特网和Java的兴起 3

1.1.4 C#的诞生 4

1.2 C#与.NET框架的关系 5

1.2.1 什么是 .NET框架 5

1.2.2 公共语言运行环境的工作原理 6

1.2.3 受控与非受控代码 6

1.2.4 公共语言规范 6

1.3 面向对象编程 7

1.3.1 封装 8

1.3.2 多态性 8

1.3.3 继承 9

1.4.1 使用命令行编译器 csc.exe 10

1.4 第一个简单的示例程序 10

1.4.2 使用Visual C++集成开发环境 11

1.4.3 逐行解释第一个示例程序 14

1.5 处理语法错误 16

1.6 小变化 17

1.7 第二个简单的示例程序 18

1.8 另一个数据类型 20

1.9 两个控制语句 22

1.9.1 if 语句 23

1.9.2 for 循环 24

1.10 使用代码块 26

1.11 分号和定位 27

1.12 缩排习惯 27

1.13 C#关键字 29

1.14 标识符 30

1.16 自我测试 31

1.15 C#类库 31

第2章 数据类型和运算符 33

2.1 数据类型重要的原因 34

2.2 C#的数值类型 34

2.3 整数类型 35

2.4 浮点类型 37

2.5 小数类型 37

2.7 布尔类型 39

2.6 字符 39

2.8 输出选项 41

2.9 常量 44

2.9.1 十六进制(hexadecimal)常量 45

2.9.2 字符转义序列 45

2.9.3 字符串常量 46

2.10 详细了解变量 48

2.10.1 变量初始化 48

2.11 变量的作用域和生存周期 49

2.10.2 动态初始化 49

2.12 运算符 52

2.13 算术运算符 52

2.14 关系运算符和逻辑运算符 54

2.15 赋值运算符 59

2.15.1 复合赋值 60

2.15.2 赋值中的类型转换 61

2.16 强制类型转换 62

2.17 运算符的优先级 64

2.18 表达式 64

2.19 表达式中的类型转换 64

2.20 空格和小括号 67

2.21 小测验 69

第3章 程序控制语句 71

3.1 从键盘输入字符 72

3.2 if语句 73

3.2.1 嵌套的if 74

3.2.2 if-else-if阶梯式结构 75

3.3 switch语句 76

3.4 for循环 83

3.4.1 for循环的一些变化 85

3.4.2 空白部分 85

3.4.3 没有循环体的循环 87

3.4.4 在for循环内部声明循环控制变量 88

3.5 while循环 89

3.6 do-while循环 90

3.7 使用break语句退出循环 94

3.8 使用continue 96

3.9 goto语句 97

3.10 嵌套循环 102

3.11 小测验 103

第4章 类、对象及方法简介 105

4.1.1 类的一般形式 106

4.1 类的基础 106

4.1.2 定义类 107

4.2 对象是怎样被创建的 111

4.3 引用变量与赋值 111

4.4 方法 112

4.4.1 给Vehicle类添加方法 113

4.4.2 从方法返回 115

4.4.3 返回值 116

4.4.4 使用参数 118

4.4.5 给Vehicle类加入带参数的方法 119

4.5 构造函数 126

4.5.1 带参数的构造函数 127

4.5.2 给Vehicle类添加构造函数 128

4.6 再次研究new运算符 129

4.7 垃圾回收和析构函数 130

4.8 this关键字 133

4.9 小测验 135

第5章 更多的数据类型和运算符 136

5.1 数组 137

5.2 多维数组 142

5.2.1 二维数组 143

5.2.2 三维或更高维数组 144

5.2.3 初始化多维数组 144

5.3 不规则数组 145

5.4 数组引用变量赋值 147

5.5 使用长度属性 148

5.6 foreach循环 154

5.7 字符串 156

5.7.1 构建字符串 157

5.7.2 字符串操作 157

5.7.3 字符串数组 159

5.7.4 字符串是不可变的 160

5.8 位运算符 161

5.8.1 位运算符AND、OR、XOR和NOT 162

5.8.2 移位运算符 166

5.8.3 位运算符的混合赋值 167

5.9 运算符“?” 170

5.10 小测验 172

第6章 深入探讨方法和类 173

6.1 控制类成员的访问 174

6.2 向方法传递对象 180

6.3 使用ref和out参数 183

6.3.1 使用ref 183

6.3.2 使用out 185

6.4 使用可变数量的参数 187

6.5 返回对象 190

6.6 方法重载 192

6.7 重载构造函数 197

6.8.2 向Main( )传递参数 203

6.8 Main( )方法 203

6.8.1 从Main( )返回值 203

6.9 递归 205

6.10 理解static 207

6.11 小测验 212

第7章 运算符重载、索引和属性 214

7.1 运算符重载 215

7.1.1 运算符方法的一般形式 215

7.1.2 重载二元运算符 216

7.1.3 重载一元运算符 218

7.1.4 增加灵活性 221

7.1.5 重载关系运算符 225

7.1.6 运算符重载的技巧和限制 227

7.2 索引 228

7.3 属性 234

7.4 小测验 246

第8章 继承 247

8.1 继承基础 248

8.2 使用保护性访问 253

8.3 构造函数和继承性 254

8.4 继承和名字隐藏 260

8.5 创建多级层次 266

8.6 何时调用构造函数 269

8.7 基类引用及派生对象 270

8.8 虚拟方法和重载 274

8.8.1 为什么重载方法 276

8.8.2 应用虚拟方法 277

8.9 使用抽象类 280

8.10 使用封装防止继承 284

8.11 对象类 285

8.12 小测验 288

第9章 接口,结构和枚举 289

9.1 接口 290

9.2 使用接口引用 294

9.3 接口属性 301

9.4 接口索引 302

9.5 接口可以被继承 304

9.6 显式实现 306

9.7 结构 308

9.8 枚举 310

9.8.1 枚举初始化 311

9.8.2 指定枚举的基本类型 312

9.9 小测验 312

第10章 异常处理 314

10.1 System.Exception类 315

10.2 异常处理基础 315

10.2.1 使用try和catch 316

10.2.2 一个异常处理的简单例子 316

10.2.3 第二个异常例子 317

10.3 异常未被捕获的后果 319

10.4 异常处理使你从容处理错误 320

10.5 使用多重catch语句 321

10.6 捕获所有异常 322

10.7 try块可以被嵌套 323

10.8 抛出异常 324

10.9 使用finally 326

10.10 仔细研究异常 328

10.11 派生异常类 330

10.12 捕获派生类异常 332

10.13 使用checked和unchecked 336

10.14 小测验 339

第11章 I/O操作 340

11.1 C#的I/O系统是建立在流基础之上的 341

11.1.1 字节流和字符流 341

11.1.2 预定义流 341

11.2.1 流类 342

11.2 流类(Stream Classes) 342

11.2.3 字符流包装类 343

11.2.2 字节流类 343

11.2.4 二进制流 344

11.3 控制台I/O 345

11.3.1 读控制台输入 345

11.3.2 写控制台输出 346

11.4 文件流与面向字节的文件I/O 347

11.4.1 打开和关闭文件 347

11.4.2 从FileStream读字节 349

11.4.3 写文件 350

11.5 基于字符的文件I/O 352

11.5.1 使用StreamWriter 352

11.5.2 使用StreamReader 354

11.6 重定向标准流 356

11.7 读写二进制数据 359

11.7.2 BinaryReader 360

11.7.1 BinaryWriter 360

11.7.3 二进制数据的I/O示例 361

11.8 随机访问文件 363

11.9 把数字串转化为它们内部表达式 365

11.10 小测验 374

第12章 代理、事件、名字空间和高级话题 375

12.1 代理 376

12.1.1 多播 379

12.1.2 为什么要使用代理 381

12.2 事件 382

12.3 名字空间 386

12.3.1 声明名字空间 386

12.3.2 using 388

12.3.3 using的第二种形式 390

12.3.4 名字空间是可添加的 391

12.3.5 名字空间是可嵌套的 393

12.3.6 缺省名字空间 394

12.4 转换运算符 396

12.5 预处理 401

12.6 #define 401

12.6.1 #if和#endif 401

12.6.2 #else和#elif 403

12.7 #undef 405

12.8 #error 405

12.9 #warning 405

12.10 #line 406

12.11 属性 406

12.11.1 Conditional属性 407

12.11.2 Obsolete属性 408

12.12 unsafe代码 409

12.12.1 简单看一下指针 409

12.12.3 使用fixed 411

12.12.2 使用unsafe 411

12.13 运行期类型判别 413

12.13.1 使用is测试类型 413

12.13.2 使用as 414

12.13.3 使用typeof 414

12.14 其他关键字 415

12.14.1 内部访问修改符 415

12.14.2 sizeof 415

12.14.3 lock 415

12.14.4 readonly 416

12.14.5 stackalloc 416

12.14.6 using声明 417

12.14.7 const和volatile 417

12.15 下一步学习什么 417

12.16 小测验 418

附录A 小测验答案 419