《叩响C#之门》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:梁斌玉编译
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2009
  • ISBN:9787121090899
  • 页数:480 页
图书介绍:本书写给完全没有编程经验的初学者。它从最基本的C#语法开始,采用逐步构建的学习方法,一步一步地深入到C#编程的核心概念。当C#语法基础打扎实后,即进入窗体编程的学习,这样读者就有了比较丰富的编程体验,此时进入委托、线程、程序集等深层次概念的学习,便水到渠成、轻松易懂。

第Ⅰ部分 C#语法基础 2

第1章 初识编程 2

1.1 C#简介 2

1.2 Visual Studio开发环境 3

1.3 认识程序 4

1.3.1 创建项目 4

1.3.2 编写代码 5

1.3.3 运行程序 7

1.4 编译 7

1.5 二进制 8

1.5.1 二进制转换为十进制 9

1.5.2 十进制转换为二进制 10

1.6 数据和内存 13

第2章 变量 15

2.1 整型变量 16

2.1.1 声明整型变量 16

2.1.2 int型变量的取值范围 20

2.1.3 short型 21

2.1.4 long型 21

2.1.5 无符号型 21

2.1.6 整数类型小结 21

2.1.7 溢出 22

2.2 实数型变量 23

2.3 字符 24

2.3.1 字符和字符串 25

2.3.2 字符型变量和字符串变量 26

2.3.3 字符串的输出 27

2.3.4 字符串的读取 27

2.3.5 ASCII编码和Unicode编码 28

2.3.6 转义字符 32

2.3.7 @控制符 33

2.3.8 +运算符 33

2.4 变量的格式化输出 34

2.5 变量的命名规则 37

2.6 常量 38

2.7 关键字(Keyword) 39

2.8 深化练习:交换两个变量的值 40

第3章 运算符和表达式 43

3.1 算术运算符 44

3.2 自增、自减运算符 46

3.3 赋值运算符 48

3.4 优先级 49

3.5 类型转换 50

3.5.1 隐式转换 50

3.5.2 显式转换 52

3.5.3 字符串和数值间的转换 53

第4章 流程控制 55

4.1 算法的概念 56

4.2 顺序结构 57

4.3 逻辑表达式 59

4.3.1 关系运算符 59

4.3.2 逻辑运算符 61

4.3.3 布尔变量 63

4.4 选择结构 64

4.4.1 if语句 64

4.4.2 switch语句 70

4.4.3 条件表达式 73

4.4.4 深化练习:三个变量排序 74

4.5 循环结构 75

4.5.1 while语句 75

4.5.2 do-while语句 80

4.5.3 for语句 82

4.6 break语句和continue语句 84

4.7 循环语句深化练习:分形图 85

第5章 枚举、结构体和数组 88

5.1 枚举 88

5.2 结构体 92

5.3 数组 94

5.3.1 一维数组 94

5.3.2 foreach循环语句 97

5.3.3 二维数组 97

5.3.4 可变数组 99

第6章 函数 101

6.1 为什么需要函数 101

6.2 定义函数 102

6.3 返回值 105

6.4 参数 107

6.4.1 值传递 107

6.4.2 地址传递 108

6.4.3 引用型参数(ref) 109

6.4.4 输出型参数(out) 111

6.4.5 参数匹配 112

6.5 递归调用 113

6.6 变量的作用域 116

6.6.1 局部变量 116

6.6.2 程序块中的局部变量 117

第7章 面向对象编程:类和对象(一) 119

7.1 背景 119

7.2 面向对象的基本概念 120

7.3 定义类 122

7.4 声明对象 125

7.5 属性 127

7.6 构造函数 129

7.7 析构函数和垃圾回收 132

7.8 实例演练:Time类 133

第8章 面向对象编程:类和对象(二) 137

8.1 以对象为成员 137

8.2 静态成员 138

8.2.1 静态变量 138

8.2.2 静态函数 141

8.3 常量成员 142

8.3.1 const常量 142

8.3.2 readonly常量 144

8.4 重载(Overload) 146

8.4.1 函数重载 146

8.4.2 构造函数的重载 148

8.4.3 运算符重载 149

8.5 this关键字 153

8.6 索引 154

8.7 值类型和引用类型 157

8.7.1 值类型变量 158

8.7.2 引用型变量 159

8.7.3 引用型变量和垃圾回收器 160

8.8 引用符和对象的区别 160

8.9 声明对象数组 162

8.10 类视图 162

第9章 面向对象编程:继承 163

9.1 继承概述 163

9.2 由基类创建派生类 164

9.3 protected成员 167

9.4 虚函数的重写 170

9.5 普通函数的隐藏 172

9.6 base关键字 173

9.7 抽象类和抽象函数 174

9.8 密封类和密封函数 175

9.9 派生类的构造函数 176

9.10 万类之源:Object 180

第10章 面向对象编程:多态性 182

10.1 派生类的对象和基类的关系 182

10.2 多态性的概念 182

10.3 多态性的应用 183

10.4 is运算符 186

10.5 向下类型转换 187

10.6 接口 188

10.7 类关系图 192

第11章 .NET框架基本概念 193

11.1 如何理解.NET框架 193

11.2 C#和.NET的关系 194

11.3 中间语言 194

11.4 强数据类型 195

11.5 类型的判定 197

11.5.1 sizeof运算符 197

11.5.2 typeof运算符 197

11.5.3 GetType()函数 197

11.5.4 is运算符 198

11.6 命名空间 199

11.7 装箱和拆箱 202

11.8 对象的相等 204

第12章 异常 208

12.1 异常概述 208

12.2 捕获异常——try-catch结构 209

12.3 finally块——try-catch-finally结构 210

12.4 抛出异常——throw语句 211

12.5 .NET中的异常类 212

12.6 异常类的属性 214

12.7 自定义异常 215

第Ⅱ部分 Windows编程 218

第13章 Windows窗体编程(一) 218

13.1 窗体(Form) 218

13.2 按钮(Button) 223

13.3 标签(Label) 226

13.4 超链接标签(LinkLabel) 227

13.5 文本框(TextBox) 228

13.6 单选按钮(RadioButton) 230

13.7 复选框(CheckBox) 231

13.8 数字输入框(NumericUpDown) 233

13.9 群组框(GroupBox) 235

13.10 面板(Panel) 237

第14章 Windows窗体编程(二) 245

14.1 鼠标事件处理 245

14.2 键盘事件处理 249

14.3 图形框(PictureBox) 252

14.4 列表框(ListBox) 254

14.5 复选列表框(CheckListBox) 256

14.6 下拉式列表框(ComboBox) 259

14.7 列表视图(ListView) 261

14.8 树状视图(TreeView) 266

14.9 控件布局 270

第15章 Windows窗体编程(三) 277

15.1 菜单 277

15.1.1 主菜单(MainMenu) 277

15.1.2 关联菜单(ContextMenu) 284

15.2 工具栏(ToolStrip) 285

15.3 对话框 289

15.3.1 另存为对话框(SaveFileDialog) 289

15.3.2 打开文件对话框(OpenFileDialog) 291

15.3.3 字体对话框(FontDialog) 293

15.3.4 颜色对话框(ColorDialog) 294

15.3.5 自定义对话框 295

15.4 多文档界面 296

15.5 Windows窗体类的层次结构 302

第Ⅲ部分 .NET进阶 306

第16章 委托与事件 306

16.1 委托 306

16.2 多播委托 311

16.3 匿名函数 312

16.4 事件处理机制 313

16.4.1 事件处理机制的原理 313

16.4.2 自定义事件 316

第17章 绘图 321

17.1 概述 321

17.2 像素和坐标系 322

17.3 颜色 322

17.4 Graphics类 324

17.5 画笔(Pen) 325

17.6 画刷(Brush) 326

17.7 路径(Path) 329

17.8 OnPaint()方法 331

17.9 坐标变换 332

17.9.1 平移变换 332

17.9.2 旋转变换 334

17.9.3 伸缩变换 335

17.9.4 在滚动窗口中绘图 336

17.10 字体(Font) 341

17.11 显示图像 344

17.11.1 Image类 344

17.11.2 Bitmap类 345

17.11.3 Metafile类 346

第18章 文件和流 348

18.1 文件系统 348

18.1.1 File类和FileInfo类 348

18.1.2 关于文件的异常 350

18.1.3 Directory类和DirectoryInfo类 351

18.1.4 Path类 353

18.1.5 Environment类 354

18.2 基于流的文件操作 356

18.2.1 FileStream类 357

18.2.2 关于流的异常 359

18.2.3 用流读写文本文件 363

18.2.4 用流读写二进制文件 365

第19章 字符串和正则表达式 368

19.1 String类 368

19.1.1 复制字符串 369

19.1.2 比较字符串 371

19.1.3 验证字符串首尾 373

19.1.4 定位字符或子串 374

19.1.5 截取子串 377

19.1.6 拆分字符串 378

19.1.7 更改大小写 378

19.1.8 修改字符串 379

19.1.9 插入格式化变量 379

19.2 StringBuilder类 380

19.3 Char类 384

19.4 正则表达式 385

19.4.1 通配符 385

19.4.2 可选字符集 386

19.4.3 或 387

19.4.4 非 388

19.4.5 数量限定符 388

19.4.6 定位符 393

19.4.7 Regex类的函数 395

19.4.8 深化练习:验证用户输入 397

第20章 特性、程序集和反射 398

20.1 特性 398

20.1.1 使用特性 398

20.1.2 自定义特性 400

20.2 程序集 404

20.2.1 认识程序集 405

20.2.2 程序集的结构 412

20.2.3 私有程序集和共享程序集 413

20.2.4 程序集的特性 413

20.3 反射 416

20.3.1 获取类型信息(Type类) 416

20.3.2 获取程序集信息(Assembly类) 418

20.3.3 动态加载类型 419

第21章 多线程 422

21.1 线程的概念 422

21.2 Thread类 423

21.3 线程的优先级 427

21.4 线程的插入 431

21.5 线程的状态 433

21.6 线程的同步 434

21.6.1 线程同步的概念 434

21.6.2 互锁(Interlocked类) 436

21.6.3 管程(Monitor类) 438

21.6.4 互斥体(Mutex类) 443

21.6.5 死锁 446

21.7 线程池 449

第22章 集合 453

22.1 集合概述 453

22.2 Array类 454

22.3 ArrayList类 455

22.4 Stack类 459

22.5 Queue类 461

22.6 SortedList类 463

22.7 Hashtable类 465

第23章 泛型 473

23.1 泛型的概念 473

23.2 泛型集合类 476

23.2.1 List〈T〉类 477

23.2.2 Stack〈T〉类 477

23.2.3 Queue〈T〉类 478

23.3 类型约束 478