C# 与 .Net 3.5 高级程序设计(第四版) 读书笔记(三)

  1. 封装 就是将对象用户不必了解的实现细节隐藏起来的一种语言能力。封装的核心就是对象内部数据不应该从公共接口直接访问。如果想改变对象的状态就要使用访问方法和修改方法。在C#中封装是通过访问修饰符在语法级别上实现的。
  2. 继承 是指基于已有类定义来创建新类定义的语言能力。
  3. 多态 是语言以同一种方式处理相关对象的能力
  4. 虚拟成员 是定义默认实现基类中的成员,它可能被派生类改写(override)。
  5. 抽象方法 是基类中不能提供默认实现的成员,它提供签名。抽象方法必须被派生类重写。
  6. 嵌套类型 是直接声明在类或者结构作用域中的类型。嵌套类型 可以使用private 修饰符,而非嵌套类型只能用public 或者internal 修饰符定义。
  7. Protected 设置的逻辑 只能被当前类调用或者派生类调用,因此不能从对象实例调用。
  8. 类(class)或结构(struct)如果不是在其它类或结构中的话,它的访问类型要不就是internal, 要不就是public;
    换句话说,如果它在其它类或结构中的话,则可以为private 或protected等。下面我说的类和结构,如无特殊说明,均指非"类中类"
    类或结构的默认访问类型是internal.
    类中所有的成员,默认均为private。
  9. Const 关键字定义常量,定义时必须为常量值指定初始值。有这种限制是因为编译时必须知道常量的值。常量字段是隐式静态的,所以使用类名前缀引用在类中定义常量。
  10. 只读字段 的值可以在运行时决定 因此在构造函数作用域中进行赋值时合法的,只读字段不是隐式静态的。
  11. 类和结构可以使用名为partial 的类型修饰符定义,它允许跨多个*.cs 文件定义C#类型。定义分部类型唯一的要求:类型名必须一致的并且定义在相同的.NET 命名空间中。
  12. 通过XML 生成C# 源代码的文档:第一步是使用新的代码注释符号:3条正斜线(///)。第二步 根据XML 数据生成对应的*.XML 文件。VVS 2008 允许使用属性窗口(生成XML文档)复选框选项来指定XML文档文件的名字。第三步:使用NDoc 应用程序 可把XML文件生成各种不同形式的文档。[微软在社区技术预览(CTP)发布了一个叫Sandcastle的工具和NDoc功能相似]
  13. 基类的作用是为扩展它的类定义所有公共数据以及成员。.NET 平台要求一个类只能有一个直接基类。
  14. C# 结构总是隐式密封(Sealed)的,因此 不能从结构继承结构,从类继承结构或从结构继承类。(简单说它只能继承接口,不能继承别的,也不能别别的继承。)
  15. 在C#下,一般基类的默认构造函数会在派生类构造之前被自动调用。
  16. 使用base 关键字控制基类的创建

public Class1(string str1,string str2,string str3,string str4):base(str1,str2,str3)

    {

        _str4 = str4;

}

       这样就可以显式调用合适的自定义构造函数,以减少对继承的初始化成员的调用次数。

  1. 抽象(abstract)基类的多态接口只是一组虚的或者抽象的方法。抽象方法只可以定义在抽象类中,如果不是这样的话,就会收到编译错误。
  2. 子类重写虚方法(virtual)不是必须的。
  3. 投影(shadowing)正式的说:如果派生类定义的成员和定义在基类中的成员一致,派生类就投影了父类的版本。我们可以在派生类的成员上添加new关键字。这样显式声明的派生类型就故意设计为隐藏符类中的版本。
  4. 在基类引用中保存派生类型总是安全的。正式的说这叫隐式转换。我们必须使用C#强制转换运算符进行显式的向下转换(父类向子类),强制转换在运行时而不是在编译时进行运算。
  5. as 关键字在运行时快速检测某个类型是否和另外一个兼容。如果返回null 则表示不兼容。
  6. is 也是用来检测两个项是否兼容,和as不同的是:如果不兼容is 关键字返回的是false而不是null 引用。
  7. System.Object.GetHashCode() 使用对象在内存中的当前位置来产生散列码。
  8. System.Exception.TargetSite  属性帮助我们了解引发某个异常的方法的各种信息。System,Exception.StackTrace 属性帮助我们标识引发异常的一系列调用。需要注意的是它是异常自动产生的,无法为其赋值。HelpLink 帮助用户找到具体的URL或包含更多信息的标准Windows帮助文档。System,Exception.Data 属性允许我们使用用户提供的信息(键/值 格式)来填充异常对象。
  9. .NET 平台引发的异常应被称为 系统异常。系统异常直接派生自System.SystemException。自定义异常应当派生自System.ApplicationException类型。System.ApplicationException唯一的目的就是标识出错误的来源。
  10.  自定义异常。

转载于:https://www.cnblogs.com/baoconghui/archive/2011/04/17/2019030.html

资源地址: 中文1 http://download.csdn.net/source/1922034 中文2 http://download.csdn.net/source/1922079 中文3 http://download.csdn.net/source/1922197 中文4 http://download.csdn.net/source/1922298 中文5 http://download.csdn.net/source/1924370 中文6 http://download.csdn.net/source/1924437 英文1 http://download.csdn.net/source/1892113 英文2 http://download.csdn.net/source/1892112 C#.NET3.5高级程序设计(第4版) 中文5 不在作者其他资源内显示,可以用高级搜索找到 《Pro C# 2010 and the .NET 4.0 Platform, Fifth Edition》已经出版http://www.apress.com/book/view/9781430225492 大家快去订购吧 amazon有折扣 http://www.amazon.com/Pro-2010-NET-Platform-Fifth/dp/1430225491/ref=sr_1_1?ie=UTF8&s=books&qid=1261446530&sr=8-1 C#.NET3.5高级程序设计(第4版) 中文 其他网友本资源我下了,都没有下载下来 本人从其他地方找的 然后按章压缩 请大家试一下能不能下载 第22章 ADO.NET之一:连接层 580 22.1 ADO.NET高层次定义 580 22.2 ADO.NET的数据提供程序 581 22.3 其他的ADO.NET命名空间 584 22.4 System.Data命名空间的类型 584 22.5 使用接口抽象数据提供程序 588 22.6 创建AutoLot数据库 590 22.7 ADO.NET 数据提供程序工厂模型 594 22.8 ADO.NET的连接式访问 598 22.9 使用数据读取器 603 22.10 构建可重用的数据访问库 604 22.11 创建控制台UI前端 610 22.12 使用SqlCommand进行异步数据访问 614 22.13 数据库事务 616 22.14 小结 619 第23章 ADO.NET之二:断开连接层 620 23.1 ADO.NET断开连接层 620 23.2 DataSet的作用 621 23.3 使用DataColumn 623 23.4 使用DataRow 625 23.5 使用DataTable 627 23.6 将DataTable对象绑定到用户界面 631 23.7 使用数据适配器填充DataSet/ DataTable 639 23.8 重访AutoLotDAL.dll 641 23.9 切换多表DataSet对象 644 23.10 Visual Studio 2008的数据访问工具 649 23.11 从UI层解耦自动生成的代码 656 23.12 小结 659 第24章 LINQ API编程 660 24.1 LINQ to ADO.NET的作用 660 24.2 使用LINQ to DataSet编程 660 24.3 使用LINQ to SQL编程 665 24.4 使用sqlmetal.exe生成实体类 669 24.5 使用Visual Studio 2008建立实体类 674 24.6 使用LINQ to XML操作XML文档 676 24.7 在内存文档中导航 680 24.8 小结 682 第25章 WCF 683 25.1 各种分布式计算API 683 25.2 WCF的作用 688 25.3 WCF核心程序集 690 25.4 Visual Studio WCF项目模板 691 25.5 WCF应用程序的基本构成 692 25.6 WCF的ABC 693 25.7 构建WCF服务 697 25.8 承载WCF服务 700 25.9 构建WCF客户端应用程序 706 25.10 使用WCF服务库项目模板 710 25.11 以Windows服务承载WCF服务 712 25.12 异步调用服务 716 25.13 定义WCF数据契约 717 25.14 小结 722 第27章 Windows Forms编程 754 27.1 Windows Forms 命名空间 754 27.2 创建一个简单的Windows Forms 程序(不用IDE) 755 27.3 Visual Studio Windows Forms项目模板 759 27.4 剖析Form 764 27.5 响应鼠标活动 769 27.6 响应键盘活动 771 27.7 设计对话框 772 27.8 通过GDI+呈现图形数据 778 27.9 创建一个完整的Windows Forms应用程序 782 27.10 小结 788 虽然法律没有具体规定不可上传出版物电子版,如侵犯您的利益,请与本人或管理员联系删除资源;纸质版读起来更舒服,请购买正版图书
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值