注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术工业技术建筑科学建筑设计精通Visual C#(第4版)

精通Visual C#(第4版)

精通Visual C#(第4版)

定 价:¥169.00

作 者: (美)托尼·加迪斯
出版社: 清华大学出版社
丛编项: 清华计算机图书译丛
标 签: 暂缺

购买这本书可以去


ISBN: 9787302509103 出版时间: 2018-10-01 包装: 平装
开本: 16开 页数: 字数:  

内容简介

  这是畅销系列Start Out With中的一本,秉持该系列图书的写作特色,从基础入手,逐步深入介绍Visual C#,讲解清晰、编排周到且易于理解。本书不仅给出了大量的示例程序,每章还提供了大量操作步骤详细的实践教程,以及实现这些应用程序的完整代码和窗体截图,方便读者学习。本书共分为11章,知识体系完备,编写体例充分考虑到教学的需要,可以作为全国各大中专院校计算机专业的相关教材,对Visual C#开发人员也是很好的参考用书。

作者简介

暂缺《精通Visual C#(第4版)》作者简介

图书目录

第1章 计算机和编程导论 1 

1.1 导言 1 

1.2 硬件和软件 2 

1.2.1 硬件 2 

1.2.2 软件 5 

1.2.3 思考题 5 

1.3 计算机存储数据的方式 6 

1.3.1 数字存储 7 

1.3.2 字符存储 8 

1.3.3 高级数字存储 9 

1.3.4 其他类型数据的 

存储方式 9 

1.3.5 思考题 9 

1.4 程序工作原理 10 

1.4.1 从机器语言到汇编 

语言 12 

1.4.2 高级语言 12 

1.4.3 关键字、运算符和 

语法概述 13 

1.4.4 编译器和解释器 14 

1.4.5 思考题 15 

1.5 图形用户界面 16 

1.5.1 事件驱动的GUI 

程序 17 

1.5.2 思考题 18 

1.6 对象 18 

1.6.1 可见对象与不可见 

对象 19 

1.6.2 类:对象来源 20 

1.6.3 .NET框架 20 

1.6.4 编写自定义类 20 

1.6.5 思考题 20 

1.7 程序开发过程 21 

1.7.1 程序开发周期 21 

1.7.2 思考题 24 

1.8 Visual Studio开发环境入门 24 

教程1-1:Visual Studio入门和 

环境设置 25 

1.8.1 新建项目 27 

教程1-2:新建Visual C#项目 27 

教程1-3:保存和关闭项目 29 

1.8.2 Visual Studio开发 

环境 29 

1.8.3 使用“自动隐藏” 

功能 30 

1.8.4 菜单栏和“标准” 

工具栏 31 

1.8.5 工具箱 32 

1.8.6 使用工具提示 34 

1.8.7 停靠和浮动窗口 34 

1.8.8 项目和解决方案 34 

1.8.9 解决方案和项目在磁盘 

上的典型组织方式 36 

1.8.10 打开现有的项目 37 

教程1-4:打开现有的项目 37 

1.8.11 显示设计器窗口 37 

1.8.12 访问Visual Studio 

文档 38 

教程1-5:熟悉Visual Studio开发 

环境 38 

1.8.13 思考题 39 

本章重点词汇(中英文对照) 39 

复习和练习 41 

编程挑战 44 

第2章 Visual C#简介 46 

2.1 窗体和控件入门 46 

2.1.1 应用程序窗体 46 

2.1.2 通过名称识别窗体和 

控件 46 

2.1.3 “属性”窗口 48 

2.1.4 添加控件到窗体中 50 

2.1.5 按钮控件详解 51 

2.1.6 修改控件的名称 52 

2.1.7 控件命名规则 53 

2.1.8 思考题 54 

2.2 为第一个程序创建图形用户 

界面 54 

教程2-1:创建Hello World应用 

程序的图形用户界面 55 

2.3 初识C#代码 58 

2.3.1 在代码编辑器和 

设计器之间切换 61 

2.3.2 将自己的代码添加 

到项目中 62 

2.3.3 消息框 64 

2.3.4 字符串常量 66 

2.3.5 多个按钮与事件 

处理程序 66 

2.3.6 设计时和运行时 67 

2.3.7 思考题 68 

2.4 为Hello World应用程序编写 

代码 68 

教程2-2:为Hello World应用 

程序编写代码 68 

2.5 使用标签控件 70 

2.5.1 设置字体属性 72 

2.5.2 设置边框样式属性 73 

2.5.3 设置自动调整大小 

属性 73 

2.5.4 设置文本对齐属性 74 

2.5.5 使用代码在标签控件 

中显示输出 75 

教程2-3:创建Language Translator 

程序 78 

2.5.6 思考题 81 

2.6 了解智能感知功能 81 

2.7 使用图片框控件 82 

2.7.1 设置大小模式属性 84 

2.7.2 创建可单击的图像 85 

教程2-4:创建Flags应用程序 86 

2.7.3 可见性属性 89 

教程2-5:创建Card Flip应用 

程序 90 

2.7.4 语句执行顺序 93 

2.7.5 思考题 94 

2.8 注释、空行和缩进 94 

2.8.1 注释 94 

2.8.2 使用空行和缩进使 

代码更易于阅读 95 

2.8.3 思考题 96 

2.9 编写代码以关闭应用程序 

窗体 96 

2.10 处理语法错误 97 

思考题 98 

本章重点词汇(中英文对照) 98 

复习和练习 99 

编程挑战 102 

第3章 处理数据 106 

3.1 使用文本框控件读取输入 106 

3.1.1 清除文本框控件的 

内容 108 

3.1.2 思考题 108 

3.2 变量初窥 108 

3.2.1 数据类型 109 

3.2.2 变量名 109 

3.2.3 string变量 109 

3.2.4 字符串连接 110 

3.2.5 在使用变量之前必须 

先声明 112 

3.2.6 局部变量 112 

3.2.7 变量的作用域 112 

3.2.8 变量的生存周期 113 

3.2.9 重复的变量名称 113 

3.2.10 赋值兼容性 113 

3.2.11 一个变量一次只能 

保存一个值 114 

教程3-1:创建Birth Date String 

应用程序 115 

3.2.12 初始化变量 118 

3.2.13 使用一个语句声明 

多个变量 119 

3.2.14 思考题 119 

3.3 数字数据类型和变量 120 

3.3.1 数字常量 121 

3.3.2 int变量的赋值 

兼容性 122 

3.3.3 double变量的赋值 

兼容性 122 

3.3.4 decimal变量的赋值 

兼容性 123 

3.3.5 使用强制类型转换 

运算符显式转换值 123 

3.3.6 思考题 124 

3.4 执行计算 125 

3.4.1 计算的顺序 126 

3.4.2 使用括号分组 127 

3.4.3 在数学表达式中使用 

混合的数据类型 127 

3.4.4 整除 128 

3.4.5 组合赋值运算符 129 

3.4.6 思考题 130 

3.5 输入和输出数字值 130 

3.5.1 从文本框中获取 

数字 130 

3.5.2 显示数字值 133 

3.5.3 使用+运算符进行 

隐式字符串转换 134 

教程3-2:计算燃油的经济性 135 

3.5.4 思考题 138 

3.6 使用ToString方法设置 

数字格式 138 

3.6.1 数字格式 139 

3.6.2 固定点格式 139 

3.6.3 指数格式 140 

3.6.4 货币格式 140 

3.6.5 使用百分比格式 140 

3.6.6 指定精度 140 

3.6.7 四舍五入 140 

3.6.8 对整数值使用 

前导零 141 

教程3-3:创建具有货币格式化 

功能的 Sale Price Calculator 

应用程序 141 

3.6.9 思考题 145 

3.7 简单的异常处理 145 

3.7.1 处理异常 146 

3.7.2 显示异常的默认错误 

消息 149 

教程3-4:创建包含异常处理 

机制的 Test Average应用 

程序 150 

3.7.3 思考题 154 

3.8 使用命名常量 154 

3.9 声明变量为字段 155 

3.9.1 在窗体类中字段的 

生存周期 158 

3.9.2 慎用字段 158 

3.9.3 常量字段 159 

教程3-5:创建Change Counter 

应用程序 159 

3.9.4 思考题 163 

3.10 使用Math类 164 

3.10.1 Math.PI和Math.E 

命名常量 165 

3.10.2 思考题 165 

3.11 图形用户界面详解 165 

3.11.1 控制窗体的Tab键 

顺序 165 

3.11.2 使用Focus方法 

改变焦点 167 

3.11.3 将键盘访问键 

分配给按钮 168 

3.11.4 BackColor属性 169 

3.11.5 ForeColor属性 170 

3.11.6 使用代码设置 

颜色 170 

3.11.7 窗体的背景图像 171 

3.11.8 使用GroupBox和 

Panel来组织控件 172 

3.12 使用调试器定位逻辑错误 174 

教程3-6:在运行时单步执行应用 

程序代码 175 

思考题 178 

本章重点词汇(中英文对照) 179 

复习和练习 180 

编程挑战 182 

第4章 条件选择 187 

4.1 决策结构和if语句 187 

4.1.1 布尔表达式和关系 

运算符 189 

4.1.2 综合应用 190 

教程4-1:完成Test Score Average 

应用程序 191 

4.1.3 思考题 195 

4.2 if-else语句 195 

教程4-2:完成Payroll with 

Overtime应用程序 197 

思考题 201 

4.3 嵌套决策结构 201 

教程4-3:完成Loan Qualifier 

应用程序 203 

4.3.1 嵌套决策结构中的 

缩进和对齐 207 

4.3.2 测试一系列条件 207 

4.3.3 if-else-if语句 210 

4.3.4 思考题 212 

4.4 逻辑运算符 213 

4.4.1 &&运算符 213 

4.4.2 ||运算符 214 

4.4.3 短路评估 214 

4.4.4 !运算符 215 

4.4.5 逻辑运算符的 

优先级 215 

4.4.6 使用逻辑运算符检查 

数字范围 216 

4.4.7 思考题 217 

4.5 bool变量和标记 218 

思考题 219 

4.6 比较字符串 219 

4.6.1 其他字符串比较 221 

4.6.2 思考题 223 

4.7 使用TryParse方法防止 

数据转换异常 223 

4.7.1 验证多个文本框中的 

数据 226 

教程4-4:计算燃油经济性 228 

4.7.2 思考题 231 

4.8 输入验证 231 

4.9 单选按钮和复选框 233 

4.9.1 单选按钮 233 

4.9.2 复选框 236 

4.9.3 CheckedChanged 

事件 237 

教程4-5:创建Color Theme应用 

程序 238 

4.9.4 思考题 241 

4.10 switch语句 241 

思考题 243 

4.11 列表框介绍 244 

4.11.1 SelectedItem属性 245 

4.11.2 确定是否选中一个 

项目 245 

教程4-6:创建Time Zone应用 

程序 246 

4.11.3 思考题 249 

本章重点词汇(中英文对照) 249 

复习和练习 250 

编程挑战 253 

第5章 循环、文件和随机数 258 

5.1 列表框详解 258 

5.1.1 Items.Count属性 259 

5.1.2 Items.Clear方法 260 

5.1.3 思考题 260 

5.2 while循环 260 

5.2.1 while循环是一个预 

测试循环 263 

5.2.2 计数器变量 263 

教程5-1:使用循环计算账户 

余额 264 

教程5-2:改进Ending Balance 

应用程序 267 

5.2.3 无限循环 270 

5.2.4 思考题 271 

5.3 递增和递减运算符 271 

思考题 272 

5.4 for循环 273 

5.4.1 for循环是一个预测试 

循环 276 

5.4.2 在初始化表达式中 

声明计数器变量 276 

5.4.3 其他形式的更新 

表达式 276 

5.4.4 通过递减来倒数 

计数器变量 277 

5.4.5 避免修改for循环体 

中的计数器变量 277 

教程5-3:使用for循环 277 

5.4.6 思考题 280 

5.5 do-while循环 281 

思考题 282 

5.6 使用文件存储数据 282 

5.6.1 文件类型 284 

5.6.2 文件访问方法 284 

5.6.3 文件名和文件流对象 285 

5.6.4 使用StreamWriter 

对象将数据写入文件 286 

5.6.5 使用write方法写入 

数据 287 

5.6.6 处理与文件相关的 

异常 288 

教程5-4:将数据写入到文本 

文件 288 

5.6.7 将数字数据写入文本 

文件 292 

5.6.8 将数据追加到现有 

文件 293 

教程5-5:追加数据到Friend.txt 

文件 294 

5.6.9 指定输出文件的 

位置 296 

5.6.10 使用StreamReader 

对象从文件中读取 

数据 296 

5.6.11 读取位置 298 

5.6.12 从文本文件读取数字 

数据 299 

5.6.13 使用循环读取文件 

并检测文件的结尾 301 

教程5-6:使用循环读取到 

文件末尾 302 

5.6.14 累计汇总 305 

教程5-7:累计汇总 306 

5.6.15 思考题 309 

5.7 使用OpenFileDialog和 

SaveFileDialog控件 310 

5.7.1 使用OpenFileDialog 

控件 310 

5.7.2 使用SaveFileDialog 

控件 313 

5.7.3 思考题 315 

5.8 随机数 315 

5.8.1 Next方法 316 

5.8.2 NextDouble方法 317 

教程5-8:模拟抛掷硬币 317 

5.8.3 随机数种子 320 

5.8.4 思考题 321 

5.9 Load事件 321 

教程5-9:创建一个Load事件 

处理程序 321 

思考题 324 

本章重点词汇(中英文对照) 324 

复习和练习 325 

编程挑战 327 

第6章 使用方法实现代码模块化 331 

6.1 方法入门 331 

6.2 void方法 333 

6.2.1 方法头 333 

6.2.2 方法体 334 

6.2.3 在类中声明方法 334 

6.2.4 调用方法 335 

教程6-1:创建并调用方法 337 

6.2.5 自上而下的设计 340 

6.2.6 思考题 341 

6.3 将实参传递给方法 341 

教程6-2:传递实参给方法 344 

6.3.1 实参和形参的数据 

类型兼容性 348 

6.3.2 形参变量的作用域 348 

6.3.3 传递多个实参 348 

6.3.4 命名实参 350 

6.3.5 默认实参 350 

6.3.6 通过值传递实参 351 

6.3.7 思考题 352 

6.4 通过引用传递实参 353 

6.4.1 使用引用形参 353 

6.4.2 使用输出形参 355 

教程6-3:使用输出形参 356 

6.4.3 思考题 360 

6.5 返回值方法 361 

6.5.1 编写自己的返回值 

函数 361 

教程6-4:编写返回值的方法 365 

6.5.2 布尔方法 368 

6.5.3 使用布尔方法实现 

输入验证的模块化 369 

教程6-5:使用布尔方法实现输入 

验证的模块化 369 

6.5.4 从方法返回一个 

字符串 372 

6.5.5 思考题 374 

6.6 调试方法 374 

教程6-6:练习使用“逐语句” 

命令 375 

教程6-7:连续使用“逐过程” 

命令 376 

教程6-8:练习使用“跳出” 

命令 377 

本章重点词汇(中英文对照) 378 

复习和练习 378 

编程挑战 380 

第7章 数组和List 385 

7.1 值类型和引用类型 385 

思考题 387 

7.2 数组基础知识 387 

7.2.1 数组元素和下标 389 

7.2.2 数组元素默认值 390 

7.2.3 使用数组元素 390 

7.2.4 数组初始化 392 

7.2.5 使用循环遍历数组 393 

7.2.6 无效的下标 394 

7.2.7 Length属性 394 

教程7-1:使用数组保存随机生成 

的彩票号码清单 395 

7.2.8 注意大小差一错误 397 

7.2.9 使用数组的foreach 

循环 397 

7.2.10 重新给数组引用 

变量赋值 399 

7.2.11 思考题 400 

7.3 使用文件和数组 400 

7.3.1 将数组的内容写入 

文件 400 

7.3.2 从文件中读取值并将 

其存储到数组中 402 

7.4 将数组作为实参传递给 

方法 403 

7.4.1 在数组形参中使用ref 

和out关键字 406 

7.4.2 思考题 410 

7.5 实用数组算法 411 

7.5.1 顺序搜索 411 

7.5.2 复制数组 413 

7.5.3 比较数组 414 

7.5.4 计算数组中值的 

总和 416 

7.5.5 计算数组中值的 

平均值 416 

7.5.6 查找数组中的最高值 

和最低值 417 

7.5.7 部分填充的数组 419 

教程7-2:处理数组数据 422 

7.6 排序和搜索数组的高级 

算法 427 

7.6.1 选择排序算法 427 

7.6.2 二分搜索算法 432 

7.6.3 思考题 434 

7.7 二维数组 435 

7.7.1 声明一个二维数组 436 

7.7.2 访问二维数组中的 

元素 437 

7.7.3 隐式声明二维数组的 

大小和初始化 437 

教程7-3:完成Seating Chart 

应用程序 438 

7.7.4 计算二维数组的所有 

元素之和 442 

7.7.5 计算二维数组各行 

之和 442 

7.7.6 计算二维数组各列 

之和 443 

7.7.7 思考题 444 

7.8 交错数组 444 

思考题 446 

7.9 List集合 446 

7.9.1 创建List对象 446 

7.9.2 初始化List 447 

7.9.3 将项目添加到List 447 

7.9.4 Count属性 447 

7.9.5 访问List中的项目 448 

7.9.6 将List传递给方法 448 

7.9.7 从List中删除项目 449 

7.9.8 在List中插入项目 450 

7.9.9 搜索List中的项目 451 

教程7-4:完成Test Score List 

应用程序 452 

7.9.10 思考题 457 

本章重点词汇(中英文对照) 458 

复习和练习 458 

编程挑战 460 

第8章 数据处理详解 464 

8.1 本章内容简介 464 

8.2 字符串和字符处理 464 

8.2.1 char数据类型 464 

8.2.2 检索字符串中的单个 

字符 465 

8.2.3 字符测试和转换 

方法 466 

教程8-1:完成Password Validation 

应用程序 470 

8.2.4 字符大小写转换 474 

8.2.5 搜索子字符串 475 

8.2.6 修改字符串的方法 482 

教程8-2:完成Telephone Format 

应用程序 484 

教程8-3:完成Telephone Unformat 

应用程序 488 

8.2.7 拆分字符串 492 

教程8-4:完成CSV Reader应用 

程序 495 

8.2.8 思考题 499 

8.3 结构 500 

8.3.1 使用new运算符来 

创建结构实例 503 

8.3.2 访问结构的字段 503 

8.3.3 将一个结构对象赋值 

给另一个结构对象 504 

8.3.4 将结构对象传递给 

方法 504 

8.3.5 比较结构对象 505 

8.3.6 结构对象数组 506 

8.3.7 在List中存储结构 

对象 506 

教程8-5:完成Phonebook应用 

程序 511 

8.3.8 思考题 517 

8.4 枚举类型 517 

8.4.1 使用枚举量或enum 

变量的ToString方法 520 

教程8-6:完成Color Spectrum 

应用程序 520 

8.4.2 获取枚举量或enum 

变量的整数值 523 

8.4.3 为枚举量指定整 

数值 523 

8.4.4 比较枚举量和enum 

变量 523 

8.4.5 使用enum变量遍历 

数组的元素 524 

8.4.6 思考题 525 

8.5 ImageList控件 525 

教程8-7:完成Random Card 

应用程序 527 

思考题 529 

本章重点词汇(中英文对照) 530 

复习和练习 530 

编程挑战 533 

第9章 类和多窗体项目 537 

9.1 关于类 537 

9.1.1 创建一个类 538 

9.1.2 创建一个对象 540 

9.1.3 编写类声明的位置 541 

教程9-1:创建和使用Coin类 544 

9.1.4 将对象传递给方法 548 

9.1.5 思考题 549 

9.2 属性 549 

9.2.1 属性与公共字段 552 

9.2.2 将属性作为实参传递 553 

教程9-2:创建和使用CellPhone 

类 553 

9.2.3 只读属性 558 

9.2.4 避免陈旧的数据 558 

9.2.5 自动属性 559 

9.2.6 只读自动属性 560 

9.2.7 思考题 560 

9.3 带形参的构造函数和重载 561 

教程9-3:创建和使用 

BankAccount类 561 

9.3.1 重载的方法 566 

9.3.2 重载的构造函数 567 

9.3.3 默认构造函数 568 

9.3.4 思考题 568 

9.4 在数组和List中存储类 

类型对象 568 

9.4.1 类类型对象的数组 568 

9.4.2 类类型对象的List 569 

教程9-4:完成Cell Phone 

Inventory应用程序 570 

9.4.3 思考题 574 

9.5 寻找问题中的类及其责任 574 

9.5.1 编写问题领域的 

说明 574 

9.5.2 识别所有的名词 575 

9.5.3 修改名词列表 576 

9.5.4 确定类的责任 579 

9.5.5 这仅仅是个开始 583 

9.5.6 思考题 584 

9.6 在项目中创建多个窗体 584 

9.6.1 重命名Form1窗体 584 

9.6.2 将新窗体添加到 

项目 586 

9.6.3 在窗体和窗体代码 

之间切换 587 

9.6.4 删除窗体 587 

9.6.5 显示窗体 588 

教程9-5:创建包含两个窗体的 

应用程序 589 

9.6.6 模式窗体和无模式 

窗体 592 

9.6.7 访问不同窗体上的 

控件 593 

教程9-6:访问不同窗体上的 

控件 594 

9.6.8 思考题 598 

本章重点词汇(中英文对照) 598 

复习和练习 599 

编程挑战 602 

第10章 继承和多态 605 

10.1 继承 605 

10.1.1 普遍性和特殊性 605 

10.1.2 继承与Is-a关系 605 

教程10-1:创建并测试 

SavingsAccount 和 

CDAccount类 616 

10.1.3 基类和派生类构造 

函数 622 

10.1.4 继承中的构造函数 

问题总结 624 

10.1.5 思考题 624 

10.2 多态 624 

10.2.1 覆盖属性 628 

10.2.2 基类引用变量只 

知道基类成员 629 

10.2.3 Is-a关系不能 

反向工作 629 

10.2.4 传递对象给基类 

形参 629 

教程10-2:完成Polymorphism 

应用程序 630 

10.2.5 思考题 635 

10.3 抽象类 636 

教程10-3:完成Computer Science 

Student应用程序 637 

思考题 642 

本章重点词汇(中英文对照) 642 

复习和练习 643 

编程挑战 645 

第11章 数据库 647 

11.1 数据库管理系统简介 647 

11.1.1 SQL Server Express 

Edition 648 

11.1.2 思考题 648 

11.2 表、行和列 648 

11.2.1 列数据类型 649 

11.2.2 主键 650 

11.2.3 标识列 650 

11.2.4 允许Null值 650 

11.2.5 思考题 651 

11.3 在Visual Studio中创建一个 

数据库 651 

11.3.1 将应用程序连接到 

数据库 651 

教程11-1:启动Phone Book应用 

程序并创建Phonelist.mdf 

数据库 652 

11.3.2 数据库文件的位置 659 

11.3.3 思考题 659 

11.4 DataGridView控件 660 

教程11-2:完成Phone Book应用 

程序 660 

11.4.1 自动生成的代码 664 

11.4.2 思考题 665 

11.5 连接到现有数据库并使用 

“详细信息”视图控件 666 

教程11-3:创建Products应用 

程序并使用“详细信息” 

视图 667 

11.5.1 运行时的数据库 

副本 674 

11.5.2 思考题 674 

11.6 数据绑定控件详解 674 

11.6.1 自定义DataGridView 

控件 674 

11.6.2 自定义“详细信息” 

视图 676 

11.6.3 将列绑定到列表框 

控件 677 

教程11-4:创建Product Lookup 

应用程序 678 

11.6.4 在多个窗体上有 

数据绑定控件 680 

教程11-5:创建Multiform Products 

应用程序 680 

11.6.5 思考题 686 

11.7 使用SQL Select语句选择 

数据 686 

11.7.1 使用Where子句 

指定搜索条件 687 

11.7.2 使用Like运算符 688 

11.7.3 使用And和Or 689 

11.7.4 对Select查询的 

结果进行排序 690 

11.7.5 TableAdapter查询 690 

11.7.6 添加新的 

TableAdapter查询 693 

教程11-6:创建Product Queries 

应用程序 693 

11.7.7 SQL数学函数 701 

教程11-7:创建Product Queries 

应用程序 701 

11.7.8 查询形参 705 

教程11-8:创建Product Search 

应用程序 705 

11.7.9 思考题 710 

本章重点词汇(中英文对照) 710 

复习和练习 711 

编程挑战 714 

附录A C#基本数据类型 716 

附录B 用户界面控件详解 717 

附录C ASCII/Unicode字符 737 

附录D 思考题答案 738


本目录推荐