|
读过这本书吗?
最近在读
读过
想读
还不熟悉
|
图书城书列:
加入到博客或社交网站:
|
|
我来评论这本书:
内容提要:
本书全面介绍了微软最新推出的编程语言C#。第1章介绍了学习C#必需的软、硬件概念。第2~5章介绍了C#的基本语言元素与结构。第6~9章讲解了进行C#编程的一些概念,包括类型、操作符、分支语句、迭代语句等。第10~11章讨论了数组的使用。第12~18章详细讨论了如何运用C#进行面向对象编程。第19~20章分别介绍了C#中的异常处理、代表与事件。第21~23章介绍了一些C#编程的相关知识,如提取XML说明文档、I/O基础知识及递归。每章都配备了大量复习题和编程练习,附录部分提供了参考答案。
本书面向C#初学者也适合于有经验的程序员学习和转向C#编程。 编辑推荐:
本书全面介绍了微软最新推出的编程语言C#。第1章介绍了学习C#必需的软、硬件概念。第2~5章介绍了C#的基本语言元素与结构。第6~9章讲解了进行C#编程的一些概念,包括类型、操作符、分支语句、迭代语句等。第10~11章讨论了数组的使用。第12~18章详细讨论了如何运用C#进行面向对象编程。第19~20章分别介绍了C#中的异常处理、代表与事件。第21~23章介绍了一些C#编程的相关知识,如提取XML说明文档、I/O基础知识及递归。每章都配备了大量复习题和编程练习,附录部分提供了参考答案。
本书面向C#初学者也适合于有经验的程序员学习和转向C#编程。 目录:
第1章 计算机和计算机编程:基本概念 1
1.1 C#是一种面向对象编程语言 2 1.2 硬件 3 1.2.1 主存储器的实质 4 1.2.2 数字系统 5 1.2.3 字节 5 1.2.4 文件 6 1.3 软件 6 1.3.1 执行C#程序的大致过程 7 1.3.2 操作系统 7 1.3.3 编程语言和编译器 7 1.3.4 .NET简介 8 1.3.5 在.NET中编译C#源代码 9 1.4 小结 10 1.5 复习题 11 第2章 你的第一个C#程序 12 2.1 软件开发 13 2.2 软件开发过程 13 2.3 算法和伪码 14 2.4 3个不同的错误类型 15 2.5 面向对象编程:初次体验 16 2.5.1 面向过程编程及其先天缺陷 16 2.5.2 面向对象编程及其优点 17 2.6 软件重用 19 2.7 .NET中代码重用的基本单元:集合 21 2.7.1 从开发者角度看集合 21 2.7.2 从用户角度看集合 22 2.8 .NET框架类库 23 2.9 C#的历史和设计目标 24 2.10 C#背景 24 2.11 C#的设计目标 26 2.12 能用C#编写什么样的程序 27 2.13 创建C#程序的原理 28 2.14 开始编程之前 28 2.15 选择文本编辑器 28 2.16 编写一个简单C#程序的7步 29 2.16.1 打开和使用命令控制台(第1步) 29 2.16.2 输入和保存C#源代码(第2步) 30 2.16.3 将源代码转换成一个PE(.exe)文件(第3步) 32 2.16.4 编译和查找错误(第4步) 32 2.16.5 运行程序(第5步) 33 2.16.6 验证输入(第6步) 33 2.16.7 庆祝的时刻(第7步) 33 2.17 源代码简短分析 33 2.18 语法错误与编译器的注释 34 2.19 小结 34 2.20 复习题 35 2.21 编程练习 35 第3章 C#导游:第一部分 36 3.1 简介 37 3.2 抽象和封装 37 3.2.1 抽象(Abstraction) 37 3.2.2 封装(Encapsulation) 38 3.2.3 学习面向对象编程的一个说明 41 3.3 一个交互式的Hello World!程序 42 3.3.1 编写Hello.cs 42 3.3.2 Hello.cs程序的基本元素 44 3.3.3 几个基本知识 51 3.4 小结 55 3.5 复习题 55 3.6 编程练习 56 第4章 C#导游:第二部分 57 4.1 简介 58 4.2 SimpleCalculator.cs程序所需元素 58 4.2.1 SimpleCalculator.cs程序清单 58 4.2.2 对SimpleCalculator.cs程序的详细分析 60 4.3 用方法简化你的代码 67 4.4 方法就是构造块:用关键字private封装你的Helper方法 68 4.5 小结 69 4.6 复习题 69 4.7 编程练习 70 第5章 你的第一个面向对象C#程序 71 5.1 简介 72 5.2 词汇结构 72 5.2.1 标识符和CaPitaLIcaTioN样式 72 5.2.2 字面值 72 5.2.3 注释和代码诠释 73 5.2.4 分隔符 73 5.2.5 操作符 73 5.2.6 关键字 74 5.3 对电梯模拟的一些思考 74 5.4 概念、目标和电梯模拟程序方案:为评价电梯系统搜集有用统计数据 74 5.5 面向对象程序的一个实例 75 5.5.1 程序SimpleElevatorSimulation.cs清单 76 5.5.2 程序的整体结构 78 5.5.3 对SimpleElevatorSimulation.cs程序的深入分析 79 5.5.4 类关系和统一模型语言(UML) 85 5.6 小结 88 5.7 复习题 88 5.8 编程练习 89 第6章 类型第一部分:简单类型 90 6.1 简介 91 6.2 概览C#中的类型 91 6.2.1 什么是类型 91 6.2.2 C#:一个强类型化语言 92 6.2.3 类型的优点 93 6.2.4 C#类型 94 6.3 简单类型 98 6.3.1 概观简单类型 99 6.3.2 整数类型 102 6.4 Blipos时钟 112 6.4.1 浮点类型 119 6.4.2 decimal类型 123 6.4.3 浮点、decimal和整数值的兼容性 124 6.4.4 显式类型转换 124 6.4.5 常量:字面值的符号名字 125 6.4.6 格式化数字值 128 6.4.7 bool类型:初步接触 130 6.5 小结 130 6.6 复习题 131 6.7 编程练习 132 第7章 类型第二部分:操作符、枚举器和字符串 133 7.1 简介 134 7.2 算术操作符及数字表达式 134 7.3 结合性 137 7.4 括号和优先级 138 7.5 模操作符(%) 139 7.6 一元操作符 143 7.6.1 一元加和一元减 143 7.6.2 自增和自减操作符 144 7.7 判断表达式的类型 146 7.8 在一个表达式中组合不同的类型 148 7.9 访问组件的元数据:简介 151 7.10 枚举常量 154 7.11 枚举器操作符 156 7.12 转换 157 7.13 System.Enum方法 157 7.14 字符和文本 157 7.15 char类型 157 7.16 string类型 160 7.16.1 string字面值和string对象 161 7.16.2 逐字字符 161 7.16.3 使用字符串 162 7.16.4 在字符串中嵌入格式化数字 164 7.16.5 使用字符串 167 7.17 小结 178 7.18 复习题 179 7.19 编程练习 180 第8章 流程控制第一部分:分支语句及相关概念 181 8.1 流程控制简介 182 8.2 if分支语句 183 8.2.1 简单if语句 183 8.2.2 复合语句 184 8.2.3 可选else子句 185 8.3 比较操作符和布尔表达式 187 8.4 嵌套if语句 189 8.5 多分支if-else语句 193 8.6 逻辑操作符 196 8.6.1 逻辑与(AND)操作符:&& 198 8.6.2 逻辑或(OR)操作符:|| 200 8.6.3 短路求值和位操作符&与| 202 8.6.4 位异或操作符:^ 203 8.6.5 逻辑非(NOT)操作符:! 203 8.7 变量的作用域 205 8.8 goto语句 208 8.9 switch语句 210 8.9.1 switch语句规则1 213 8.9.2 switch语句规则2 214 8.9.3 switch语句规则3 216 8.9.4 switch语句规则4 218 8.9.5 使用switch语句 218 8.10 条件操作符 219 8.11 小结 219 8.12 复习题 220 8.13 编程练习 221 第9章 流程控制第二部分:迭代语句 222 9.1 遍历、分析和生成数据序列 223 9.2 while循环语句 223 9.3 do-while循环语句 227 9.4 for循环语句 230 9.5 跳转语句break和continue 235 9.5.1 break语句 235 9.5.2 continue语句 236 9.6 结构化编程和结构化的结构 237 9.7 组合赋值操作符 239 9.8 嵌套迭代语句 241 9.9 编程练习 246 9.10 小结 247 9.11 复习题 248 9.12 编程练习 249 第10章 数组第一部分:数组基本知识 251 10.1 数组的声明和定义 252 10.2 访问单个数组元素 255 10.3 数组索引越界 259 10.4 调整基于0的数组索引 262 10.5 初始化数组 263 10.6 用foreach语句遍历整个数组 264 10.7 System.Array是一个引用类型 265 10.8 数组和相等性 267 10.9 数组和方法 269 10.9.1 数组元素作为方法中的参数 269 10.9.2 数组引用作为方法参数 270 10.9.3 克隆数组对象 273 10.10 执行数组值相等性比较的方法 276 10.11 命令行参数 277 10.12 使用数组作为方法的返回值 279 10.13 引用对象的数组元素 282 10.14 数组作为类中的实例变量 285 10.15 小结 292 10.16 复习题 293 10.17 编程练习 294 第11章 数组第二部分:多维数组――数组检索与排序 295 11.1 多维数组 296 11.1.1 二维数组 296 11.1.2 锯齿数组 311 11.2 多于二维的数组 314 11.3 System.Array的内置方法 317 11.4 特殊数组技术 318 11.5 检索 325 11.5.1 顺序检索(Sequential Search) 326 11.5.2 二分检索(Binary Search) 327 11.5.3 用System.Array的IndexOf方法检索 332 11.6 小结 333 11.7 复习题 333 11.8 编程练习 334 第12章 类解剖第一部分:静态类成员和方法的使用 335 12.1 类解剖:概览 336 12.2 数据成员(data member) 338 12.2.1 实例变量(instance variable) 338 12.2.2 静态变量(static variable) 338 12.2.3 常量成员(constant member) 344 12.2.4 只读成员(readonly member) 345 12.2.5 声明数据成员:概览 345 12.3 函数成员 346 12.3.1 方法 346 12.3.2 静态方法(static methods) 348 12.4 小结 370 12.5 复习题 371 12.6 编程练习 373 第13章 类解剖第二部分: 对象创建和垃圾回收 375 13.1 实例构造函数 376 13.1.1 为什么需要实例构造函数 376 13.1.2 使用实例构造函数 378 13.1.3 重载实例构造函数 381 13.1.4 构造函数初始化器 386 13.1.5 私有实例构造函数 388 13.2 静态构造函数 388 13.3 只读成员(readonly member) 389 13.4 垃圾回收:自动动态内存管理 390 13.4.1 对象如何被废弃 390 13.4.2 垃圾回收器的任务 393 13.4.3 释放非内存有限资源 394 13.5 小结 405 13.6 复习题 406 13.7 编程练习 407 第14章 类解剖第三部分: 编写直观代码 409 14.1 属性 410 14.1.1 属性与存取器和变异器方法 410 14.1.2 使用属性提高效率 415 14.1.3 用属性实现延迟初始化和惰性更新 416 14.2 索引器:像数组一样使用对象 419 14.2.1 从索引器所寄居的对象中调用索引器 422 14.2.2 索引器重载:同一类中的多索引器 422 14.2.3 避免滥用索引器 426 14.3 操作符重载 427 14.4 用户自定义隐式和显式转换 434 14.4.1 需要用户自定义转换的两种情形 435 14.4.2 使用非用户自定义转换技术 436 14.4.3 用户自定义转换语法 436 14.4.4 综合运用用户自定义和隐式转换 441 14.5 嵌套类型 442 14.5.1 嵌套类的优点 443 14.5.2 简单嵌套类示例 443 14.6 小结 444 14.7 复习题 444 14.8 编程练习 446 第15章 名字空间、编译单元和集合 447 15.1 自定义名字空间 448 15.2 全局匿名名字空间 448 15.3 名字空间和编译单元 449 15.4 嵌套名字空间 450 15.5 名字空间语法 452 15.6 using指示符的更多知识 453 15.7 编译单元、名字空间及集合 455 15.7.1 将几个编译单元编译成一个集合 455 15.7.2 重用集合中的名字空间 458 15.7.3 将名字空间分布到几个集合中 460 15.8 应用Ildasm探索集合 462 15.9 小结 464 15.10 复习题 464 15.11 编程练习 466 第16章 继承第一部分:基本概念 467 16.1 继承的必需性 468 16.2 继承基础知识 473 16.3 访问修饰符及继承 480 16.3.1 访问修饰符protected 480 16.3.2 访问私有基类成员 480 16.3.3 internal protected访问修饰符 481 16.3.4 C#的访问修饰符:概览 481 16.4 派生类构造函数 482 16.5 索引器也能被继承和覆盖 485 16.6 在基类中调用覆盖函数 487 16.7 通过继承重用.NET框架类库 490 16.8 多级派生类 491 16.9 方法覆盖及重载原理不同 494 16.10 小结 495 16.11 复习题 496 16.12 编程练习 497 第17章 继承第二部分:抽象函数、多态及接口 499 17.1 抽象方法、属性、索引器及类 500 17.2 多态(polymorphism) 503 17.2.1 后代类的对象具有多个类型 503 17.2.2 动态捆绑虚方法和(get,set)存取器 503 17.2.3 实例学习:使用多态创建简单绘图程序 505 17.3 丢失和重新获取类型信息 511 17.3.1 is操作符 511 17.3.2 对象类型转换 511 17.3.3 as操作符 514 17.4 最终的基类:System.Object 514 17.5 隐藏方法 518 17.6 用new和override关键字控制版本 520 17.7 多重继承 522 17.8 接口 523 17.8.1 定义接口 524 17.8.2 实现接口 526 17.8.3 应用接口的一般编程 528 17.8.4 构建接口层次 531 17.8.5 接口转换 532 17.8.6 覆盖虚接口 532 17.8.7 显式实现接口函数 533 17.9 小结 535 17.10 复习题 535 17.11 编程练习 536 第18章 结构 538 18.1 定义结构 539 18.2 装箱和拆箱 541 18.3 用与不用new关键字创建结构 542 18.4 值类型和引用类型 543 18.5 小结 544 18.6 复习题 544 18.7 编程练习 544 第19章 异常处理 545 19.1 异常处理概览 546 19.2 没有try-catch-finally的情形 546 19.3 try和c |