Visual C# 2005技术内幕

副标题:无

作   者:(美)Donis Marshall著;许华杰,刘光惠译

分类号:

ISBN:9787302144175

微信扫一扫,移动浏览光盘

简介

本书著述清楚,由浅入深地介绍了C#编程要素,对C#增强特性进行了重点描述。全书分5部分。第Ⅰ部分“核心语言”着重介绍C#语言的基本概念。第Ⅱ部分“核心技能”覆盖创建C#应用所需要的核心技能。第Ⅲ部分“C#语言详述”重点描述额外的语言特性,比如托管函数指针和结构化异常处理。第Ⅳ部分“调试”全面描述如何调试托管代码。第Ⅴ部分“高级概念”透彻介绍托管内存和垃圾加收,同时还讨论了不安全代码。 本书内容丰富,详略得当,在讲述基本概念的同时,给出了大量范例代码和提示,适合所有专业开发人员和编程爱好者阅读。

目录

第ⅰ部分 核 心 语 言

第1章 visual c#编程介绍 3

1.1 语言的起源 4

1.2 c#核心语言特征 6

1.2.1 符号与标记 7

1.2.2 关键字 20

1.2.3 基元 23

1.3 c#示例程序 23

1.4 命名空间 25

1.5 main入口点 27

1.6 局部变量 28

1.7 可空类型 29

1.8 表达式 29

1.9 选择语句 30

1.10 迭代语句 32

1.11 类 34

第2章 类型 35

2.1 类 36

2.1.1 类成员 37

2.1.2 成员函数 42

.2.2 结构 59

2.3 枚举 60

2.4 恒等与等价 62

2.5 类的细化 63

第3章 继承 64

3.1 继承示例 68

跨语言继承 68

3.2 system.object 70

3.2.1 object.equals方法 71

3.2.2 object.gethashcode方法 72

3.2.3 object.gettype方法 72

3.2.4 object.tostring方法 73

3.2.5 object.memberwiseclone方法 73

3.2.6 object.referenceequals方法 74

3.3 employee类 75

3.4 实现继承 76

3.5 重写 77

3.5.1 virtual和override关键字 77

3.5.2 重载与重写 78

3.5.3 重写事件 79

3.6 new修饰符 79

3.7 抽象类 83

3.8 密封类 84

3.9 构造函数和析构函数 85

3.10 接口 87

3.10.1 实现接口 89

3.10.2 接口成员的显式实现 90

3.10.3 接口的再实现 93

3.11 多态性 94

3.11.1 接口多态性 97

3.11.2 new修饰符和多态性 98

3.12 强制转换 99

3.13 属性继承 103

3.14 visual studio .net 2005 104
第ⅱ部分 核 心 功 能

第4章 visual studio 2005介绍 107

4.1 集成开发环境 107

4.1.1 起始页 108

4.1.2 社区集成 108

4.1.3 创建项目 109

4.1.4 解决方案资源管理器 109

4.1.5 添加引用 112

4.1.6 数据菜单 113

4.1.7 visual studio中的管理窗口 113

4.1.8 自动恢复 114

4.2 类层次结构 115

4.2.1 类视图窗口 115

4.2.2 对象浏览器 116

4.2.3 类关系图 116

4.2.4 继承 119

4.2.5 关联 120

4.2.6 类关系图演练 121

4.2.7 “错误列表”窗口 124

4.3 代码编辑器 125

4.3.1 intellisense 125

4.3.2 外侧代码 126

4.3.3 字体和颜色格式 126

4.3.4 源代码格式 127

4.3.5 更改跟踪 127

4.3.6 用户配置文件 128

4.4 代码段 129

4.4.1 复制和粘贴 129

4.4.2 插入代码段 130

4.4.3 默认代码段 131

4.4.4 代码段管理器 132

4.4.5 创建代码段 133

4.5 重构 138

4.6 生成和部署 142

4.7 msbuild 142

4.7.1 项 142

4.7.2 属性 143

4.7.3 任务 143

4.7.4 项目文件 144

4.7.5 msbuild演练 145

4.8 clickonce部署 146

4.9 数组和集合 151

第5章 数组和集合 152

5.1 数组 154

5.1.1 数组元素 155

5.1.2 多维数组 155

5.1.3 交错数组 157

5.1.4 system.array 158

5.1.5 system.array属性 165

5.1.6 params关键字 170

5.1.7 数组转换 172

5.2 集合 173

5.2.1 数组列表集合 174

5.2.2 位数组集合 177

5.2.3 哈希表集合 179

5.2.4 队列集合 183

5.2.5 堆栈集合 187

5.2.6 特殊集合 188

5.3 泛型 188

第6章 泛型 189

6.1 泛型类型 192

6.1.1 类型参数 192

6.1.2 构造类型 195

6.2 泛型方法 196

6.2.1 重载方法 196

6.2.2 泛型类型的this引用 198

6.3 约束 198

6.3.1 派生约束 199

6.3.2 接口约束 203

6.3.3 值类型约束 204

6.3.4 引用类型约束 205

6.3.5 默认构造函数约束 205

6.4 强制类型转换 206

6.5 继承 207

6.5.1 重写方法 208

6.5.2 嵌套类型 209

6.6 静态成员 210

6.6.1 运算符函数 211

6.6.2 序列化 212

6.6.3 泛型内部机理 214

6.6.4 泛型集合 215

6.7 枚举器 215

第7章 迭代器 216

7.1 枚举对象 217

7.1.1 枚举器 217

7.1.2 枚举器例子 219

7.1.3 枚举器例子(静态集合) 220

7.1.4 枚举器举例(版本集合) 221

7.1.5 ienumerator问题 223

7.2 泛型枚举器 223

7.2.1 ienumerable[t]接口 223

7.2.2 ienumerator[t] 接口 224

7.2.3 泛型枚举器举例(版本集合) 225

7.3 迭代器 227

7.3.1 yield语句 227

7.3.2 迭代器块 228

7.3.3 迭代器内部机理 229

7.3.4 迭代器举例 230

7.4 委托和事件 233
第ⅲ部分 c#语言详述

第8章 委托和事件 237

8.1 委托 238

8.1.1 定义一个委托 239

8.1.2 创建一个委托 239

8.1.3 调用一个委托 241

8.1.4 委托数组 241

8.1.5 异步调用 247

8.1.6 异步委托关系图 250

8.1.7 异常 251

8.2 匿名方法 252

8.2.1 外部变量 254

8.2.2 泛型匿名方法 256

8.2.3 匿名方法的限制 256

8.3 事件 256

8.3.1 发布一个事件 257

8.3.2 订阅 258

8.3.3 引发一个事件 258

8.4 异常处理 260

第9章 异常处理 261

9.1 异常举例 262

9.2 公共异常模型 262

9.3 结构化的异常处理 263

9.3.1 try语句 263

9.3.2 catch 语句 264

9.3.3 finally语句 266

9.3.4 异常信息表 267

9.3.5 嵌套try块 267

9.4 system.exception 269

9.4.1 system.exception函数 269

9.4.2 system.exception属性 270

9.4.3 应用程序异常 271

9.4.4 异常转化 273

9.4.5 com互操作性异常 273

9.5 远程异常 277

9.6 未处理异常 278

9.6.1 application.threadexception 279

9.6.2 appdomain.unhandled-

exception 280

9.7 在visual studio中管理异常 281

9.7.1 异常助手 281

9.7.2 异常对话框 282

9.8 元数据和反射 282
第ⅳ部分 调 试

第10章 元数据和反射 285

10.1 元数据 285

10.1.1 标记 287

10.1.2 元数据堆 287

10.1.3 流 288

10.1.4 元数据验证 288

10.1.5 ildasm工具 289

10.2 反射 293

10.2.1 获得一个type对象 293

10.2.2 加载程序集 295

10.2.3 浏览type信息 297

10.2.4 动态调用 300

10.2.5 类型的创建 304

10.2.6 晚期绑定 306

10.2.7 函数调用性能 308

10.3 反射和泛型 308

10.3.1 isgeneric和isgenerictypedefinition 308

10.3.2 typeof 309

10.3.3 gettype 309

10.3.4 getgenerictypedefinition 310

10.3.5 getgenericarguments 311

10.3.6 创建泛型类型 312

10.3.7 反射的安全性 313

10.3.8 属性 313

10.3.9 创建一个自定义属性 316

10.3.10 属性和反射 319

10.4 msil 321

第11章 msil编程 322

11.1 “hello world”应用程序 324

11.2 计算堆栈 325

11.3 msil深度探索 326

11.3.1 指令 326

11.3.2 程序集指令 326

11.3.3 类指令 328

11.3.4 方法指令 331

11.3.5 msil指令 333

11.4 复杂任务 335

11.5 分支 340

11.6 数组 343

11.7 算术指令 345

11.7.1 转换操作 345

11.7.2 异常处理 346

11.7.3 其他操作 347

11.8 进程执行 348

11.9 用visual studio 2005进行调试 351

第12章 用visual studio 2005进行调试 352

12.1 调试windows窗体的项目 353

12.1.1 附加到一个运行进程 353

12.1.2 调试控制台应用程序项目 355

12.1.3 调试类库项目 355

12.2 调试设置 355

12.2.1 调试和发布配置 355

12.2.2 配置管理器 356

12.3 调试设置 357

12.3.1 visual studio环境调试设置 357

12.3.2 解决方案的调试设置 361

12.3.3 一个项目的调试设置 361

12.4 visual studio调试用户界面 363

12.4.1 数据提示 363

12.4.2 可视化工具 363

12.5 断点 365

12.5.1 函数断点 365

12.5.2 “断点”窗口 367

12.5.3 跟踪点 370

12.5.4 断点符号 372

12.6 代码分步 372

12.6.1 分布命令 372

12.6.2 设定下一条语句演练 373

12.7 “调试”工具栏 374

12.8 调试窗口 374

12.8.1 “断点”窗口 374

12.8.2 “输出”窗口 374

12.8.3 “脚本资源管理器” 375

12.8.4 “监视”窗口 375

12.8.5 “自动”窗口 378

12.8.6 “局部变量”窗口 378

12.8.7 “即时”窗口 378

12.8.8 “调用堆栈”窗口 380

12.8.9 “线程”窗口 381

12.8.10 “模块”窗口 381

12.8.11 “进程”窗口 382

12.8.12 “内存”窗口 382

12.8.13 “反汇编”窗口 383

12.8.14 “寄存器”窗口 383

12.9 跟踪 384

12.9.1 跟踪示例 391

12.9.2 配置文件 393

12.9.3 有配置文件的跟踪示例 394

12.10 debuggerdisplayattribute 396

12.10.1 debuggerbrowsable-attribute 398

12.10.2 debuggertypeproxy-attribute 399

12.11 转储文件 400

12.12 高级调试 401

第13章 高级调试 402

13.1 debuggableattribute属性 404

13.2 调试器 405

13.3 实时调试 406

13.4 托管调试器 408

13.4.1 mdbg演练 408

13.4.2 mdbg命令 411

13.5 windbg 413

13.6 son of strike (sos) 419

13.6.1 sos演练部分i 419

13.6.2 sos演练部分ii 422

13.7 转储 423

13.7.1 adplus 424

13.7.2 dr. watson 425

13.8 内存管理 428

13.8.1 引用树 429

13.8.2 代 431

13.8.3 终结 434

13.8.4 性能监试器 434

13.9 线程 435

13.10 异常 441

13.11 符号 442

13.11.1 symsrv symbol server 443

13.11.2 应用程序符号 443

13.12 内存管理 444
第ⅴ部分 高 级 概 念

第14章 内存管理 447

14.1 非托管资源 448

14.1.1 垃圾回收概述 449

14.1.2 gc风格 452

14.2 终结器 454

14.2.1 终结器线程 458

14.2.2 终结器注意事项 458

14.3 idisposable.dispose 465

14.3.1 可处置模式 469

14.3.2 可处置模式的注意事项 470

14.3.3 处置内部对象 473

14.4 弱引用 475

14.4.1 弱引用内部机理 477

14.4.2 弱引用类 477

14.4.3 关键终结对象 477

14.4.4 约束执行区域 478

14.4.5 管理非托管资源 480

14.5 gc类 482

14.6 不安全代码 483

第15章 不安全代码 484

15.1 unsafe关键字 486

15.1.1 指针 487

15.1.2 指针参数和返回 490

15.1.3 平台调用 493

15.2 结语 504

附录a 运算符重载 505


已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

Visual C# 2005技术内幕
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon