???

Aus der "ECMA-334 C# Language Specification":

1 The abstract modifier is used to indicate that a class is incomplete 
  and that it is  intended to be used only as a base class. 

2 An abstract class differs from a non-abstract class in the following
ways: 
  
  3 An abstract class cannot be instantiated directly, and it is a 
    compile-time error to use the new operator on an abstract class. 

  4 While it is possible to have variables and values whose compile-time

    types are abstract, such variables and values will necessarily
either 
    be null or contain references to instances of non-abstract classes 
    derived from the abstract types. 

  5 An abstract class is permitted (but not required) to contain
abstract 
    members. 

  6 An abstract class cannot be sealed. 

1 When a non-abstract class is derived from an abstract class, the
non-abstract 
class must include actual implementations of all inherited abstract
members, 
thereby overriding those abstract members. 

[Example: In the example 

abstract class A  
{  
   public abstract void F();  
}  
abstract class B: A  
{  
   public void G() {}  
}  
class C: B  
{  
   public override void F() {  
      // actual implementation of F  
   }  
}  

the abstract class A introduces an abstract method F. Class B introduces
an additional method G, but since it doesn't provide an implementation
of F, B must also be declared abstract. Class C overrides F and provides
an actual implementation. Since there are no abstract members in C, C is
permitted (but not required) to be non-abstract. end example] 

<http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon/
html/vbconabstractclasses.asp>

<http://msdn.microsoft.com/library/default.asp?url=/library/en-us/csref/
html/vclrfabstract.asp>



_______________________________________________
Csharp.net mailing list
[EMAIL PROTECTED]
http://www.glengamoi.com/mailman/listinfo/csharp.net

Antwort per Email an