DateTime structure, System namespace
as example of value type, 11
using as a key for Hashtable, 285
default namespace
setting namespaces in Visual Studio .NET, 299
defining classes, 34
defining data members, 35
defining types, 7
Delegate class, System namespace
Combine method, 224, 228, 244, 255
Remove method, 224, 230, 244, 255
delegates, 33, 216
see also events.
asynchronous delegates, 231
creating and using, 231
defining and using, 41
events, 215
introduction, 41
multicast delegates, 222, 223
creating and using, 223
DelegatesEvents\ MulticastDelegates example, 224
using addition and subtraction operators, 224
reasons for using, 41
simple delegates
binding to static methods, 220
creating and using, 217
DelegatesEvents\UsingDelegates example, 217
invoking asynchronously, 222
invoking synchronously, 223
viewing delegate example code, 222
type safety, 215
usefulness, 216
DelegatesEvents - MulticastDelegates example
multicast delegates, 224
DelegatesEvents - AdvancedEvents example
creating events that pass information, 248
DelegatesEvents - AsyncDelegates example
asynchronous delegates, 232
DelegatesEvents - CustomAddRemove example
defining your own registration methods, 254
DelegatesEvents - SimpleEvent example
publishing events, 241
DelegatesEvents - UsingDelegates example
creating simple delegates, 217
deploying applications as assemblies.
see applications, deploying asassemblies.
derived attribute
get property procedure, calculating using, 136
deriving classes, 277, 281
deriving_classes example, 278
non-virtual method dispatching, 279
overriding and shadowing methods, 278
overriding_and_shadowing example, 278
polymorphism in action, 280
virtual method dispatching, 279
deriving_classes example, 278
deserialization, 200
serializable_deserializable example, 200, 202
Deserialize method, SoapFormatter class, 201
design patterns, 204
Abstract Factory pattern, 207
copy-on-write, 211
Gang of Four, 204
lazy initialization, 210
Singleton, 204
designing a base class, 272
abstract compared to concrete classes, 273
sealing classes, 276
sealing_classe example, 276
using virtual methods, 274
abstract_teacher example, 274
destroying objects, 181
Finalize method, 182
destructors, 74
defining, 35
disadvantages, 184
methods, 41
using, 182
Disassembler tool, MSIL
see MSIL Dissassembler.
Dispose method, IDisposable interface, 184
BasicShape example, 184
Double class, System namespace, 19
IsNan method, 19
IsNegativeInfinity method, 19
IsPositiveInfinity method, 19
Parse method, 19
Double-Checked Locking pattern
HeadTeacher example, 206