Namespaces are additive : NameSpace « Language Basics « C# / C Sharp






Namespaces are additive

Namespaces are additive
/*
C#: The Complete Reference 
by Herbert Schildt 

Publisher: Osborne/McGraw-Hill (March 8, 2002)
ISBN: 0072134852
*/
// Namespaces are additive. 
 
using System; 
 
// Bring Counter into view. 
using Counter; 
 
// Here is one Counter namespace. 
namespace Counter { 
  // A simple countdown counter. 
  class CountDown { 
    int val; 
 
    public CountDown(int n) { 
      val = n; 
    } 
 
    public void reset(int n) { 
      val = n; 
    } 
 
    public int count() { 
      if(val > 0) return val--; 
      else return 0; 
    } 
  } 
} 
 
// Here is another Counter namespace. 
namespace Counter { 
  // A simple count-up counter. 
  class CountUp { 
    int val; 
    int target; 
 
    public int Target { 
      get{ 
        return target; 
      } 
    } 
 
    public CountUp(int n) { 
      target = n; 
      val = 0; 
    } 
 
    public void reset(int n) { 
      target = n; 
      val = 0; 
    } 
 
    public int count() { 
      if(val < target) return val++; 
      else return target; 
    } 
  } 
} 
 
public class NSDemo5 { 
  public static void Main() { 
    CountDown cd = new CountDown(10); 
    CountUp cu = new CountUp(8); 
    int i; 
 
    do { 
      i = cd.count(); 
      Console.Write(i + " "); 
    } while(i > 0); 
    Console.WriteLine(); 
 
    do { 
      i = cu.count(); 
      Console.Write(i + " "); 
    } while(i < cu.Target); 
 
  } 
}
           
       








Related examples in the same category

1.Using the alias keyword to refer to a nested namespace
2.Define an alias to represent a namespace
3.Creating an alias
4.Namespaces can be nestedNamespaces can be nested
5.Illustrates the use of two namespacesIllustrates the use of two namespaces
6.The use of namespace hierarchies (part 1)The use of namespace hierarchies (part 1)
7.How the using statement is used to specify namespacesHow the using statement is used to specify namespaces
8.Using namespaceUsing namespace
9.Demonstrates using as a statementDemonstrates using as a statement
10.Demonstrate a namespaceDemonstrate a namespace
11.Namespaces prevent name conflictsNamespaces prevent name conflicts
12.Demonstrate a namespace 2Demonstrate a namespace 2
13.C# Namespaces and UsingC# Namespaces and Using