标签:c#
UML (unified modeling language),统一建模语言来研究类和对象
对象:类名
myPrinter:Printer
+Instant:bool 可访问性:成员名:成员的类型
对象:即OPP应用程序的组成部件。包括数据和操作,类的是实例
对象的属性/字段: 数据通过属性供外面代码使用 <string>.Length
对象的方法: 操作可以通过方法来供外面代码使用 <string>.ToUpper()
类:实例化对象的类型定义
类成员包括:属性和方法
对象的生存周期:
构造阶段:对象最初进行实例化的时期,由构造函数完成。通过new 关键字调用构造函数
cupofCoffee myCup = new cupofCoffee(); //默认的构造函数来创建对象
cupofCoffee myCup = new cupofCoffee(“blue mountain”); //非默认的构造函数来创建对象
运行阶段:正在使用的状态下。
析构阶段:在删除一个对象时候,要做的清理工作,如释放内存。由析构函数完成。
一般不需要提供析构函数代码,由默认的析构函数自动自行操作。
但如果变量超出范围,代码不能访问它,该变量仍在计算机内存的某个地方,只有在.net 运行程序执行其垃圾回收,进行清理,该实例才被彻底删除。
静态类成员和实例类成员,不需要实例化
静态方法:Console.writeline();
静态构造函数:执行此类的初始化任务,一个类只能有一个静态构造函数,不能有任何修饰符,也不能带任何参数。不能直接调用,只能调用一次。
静态类:不能实例化对象,可以有一个静态构造函数。
非静态函数:即实例构造函数
对象的其他一些特性:
接口:把公共实例(非静态)方法和属性组合起来,以封装特定功能的一个集合。
可以在类中实现它,类可以支持接口所指定的所有属性和成员。
接口不能单独存在,不能实例化一个接口。
接口中不能包含实现其成员的任何代码,而只能定义成员本身。
实现过程必须在实现接口的类中完成。
一个类可以支持多个接口,多个类也可以支持相同的接口。
可把通用的属性和方法addsugar(),Milk,sugar和instant 组合到一个接口中。此接口为IHotDrink。
发布接口后,它可用于其他开发人员或终端用户后,最好不要修改它。
可创建一个新接口,来扩展旧接口。
可删除的对象
支持IDisposable接口的对象必须实现其Dispose()方法,即它们必须提供这个方法的代码。
不再需要某个对象时,就调用这个方法,释放重要的资源。
继承
任何类可从另一个类中继承,即这个类拥有它继承的类的所有成员。
C#中的对象仅能直接派生于一个基类。
派生类不能访问基类的私有成员,可以访问其公有成员。
只有派生类可访问protected 成员。
外部代码不能访问private 成员和protected 成员。
密封类,不能用作基类,没有派生类。
所有的对象有一个共同的基类 object
对象之间的关系
继承关系:可以让派生类完整地获得基类的特性,而派生类也可以访问基类内部的一些工作代码(通过受保护的成员)。
包含关系:一个类包含另一个类,类似于继承关系,包含类可以控制对被包含类的成员的访问。
集合关系:一个类用作另一个类的多个实例的容器。使用数组存储多个对象
Animal [] animals = new Animal [5];
集合以所存储的对象名称的复数形式(animals)来命名
集合通常实现额外的功能,如add() 和remove()方法可添加和删除集合中的项。
集合的item属性,根据对象的索引返回改对象。
本文出自 “Ricky's Blog” 博客,请务必保留此出处http://57388.blog.51cto.com/47388/1651516
标签:c#
原文地址:http://57388.blog.51cto.com/47388/1651516