C# Namespaces Begrijpen: Naamconflicten Vermijden
Een namespace biedt een manier om één set namen gescheiden te houden van een andere. Klassennamen in de ene namespace conflictueren niet met dezelfde namen in een andere.
Een Namespace Definiëren
Syntaxis:
namespace naam_van_namespace {
// code declaraties
}
Aanroepen met prefix:
naam_van_namespace.item_naam;
Voorbeeld: Namespaces Gebruiken
using System;
namespace eerste_ruimte {
class ruimte_kl {
public void Func() { Console.WriteLine("In eerste_ruimte"); }
}
}
namespace tweede_ruimte {
class ruimte_kl {
public void Func() { Console.WriteLine("In tweede_ruimte"); }
}
}
class TestKlasse {
static void Main(string[] args) {
eerste_ruimte.ruimte_kl fc = new eerste_ruimte.ruimte_kl();
tweede_ruimte.ruimte_kl sc = new tweede_ruimte.ruimte_kl();
fc.Func(); sc.Func();
Console.ReadKey();
}
}
Uitvoer: In eerste_ruimte, In tweede_ruimte
Het using Sleutelwoord
using geeft aan dat de namen uit de namespace gebruikt worden. Bijv. System.Console → Console.
Met using namespace directive hoef je de prefix niet te herhalen:
using System;
using eerste_ruimte;
using tweede_ruimte;
namespace eerste_ruimte { class abc { public void Func() { Console.WriteLine("In eerste_ruimte"); } } }
namespace tweede_ruimte { class efg { public void Func() { Console.WriteLine("In tweede_ruimte"); } } }
class TestKlasse {
static void Main(string[] args) {
abc fc = new abc();
efg sc = new efg();
fc.Func(); sc.Func();
Console.ReadKey();
}
}
Uitvoer: In eerste_ruimte, In tweede_ruimte
Geneste Namespaces
Namespace in een andere namespace:
namespace naam1 {
namespace naam2 { ... }
}
Toegang via puntoperator:
using eerste_ruimte.tweede_ruimte; // of eerste_ruimte.tweede_ruimte.efg sc = new eerste_ruimte.tweede_ruimte.efg();
Voorbeeld
using System;
using eerste_ruimte;
using eerste_ruimte.tweede_ruimte;
namespace eerste_ruimte {
class abc { public void Func() { Console.WriteLine("In eerste_ruimte"); } }
namespace tweede_ruimte {
class efg { public void Func() { Console.WriteLine("In tweede_ruimte"); } }
}
}
class TestKlasse {
static void Main(string[] args) {
abc fc = new abc();
efg sc = new efg();
fc.Func(); sc.Func();
Console.ReadKey();
}
}
Uitvoer: In eerste_ruimte, In tweede_ruimte
C Taal
- C# Hello World – Uw eerste C# applicatie bouwen
- C# Keywords en Identifiers begrijpen: Regels, lijsten en best practices
- C# Variabelen & Primitive Datatypes onder de knie krijgen: Complete gids
- C# Operators – Uitgebreide gids voor operators in C#
- C# Bitwise en Bit Shift Operators: Een Uitgebreide Gids
- C# Fundamentals: Invoer en Uitvoer Basis
- C# Expressies, Statements & Blokken: Uitgebreide Gids met Praktische Voorbeelden
- C# Comments Onder de Loep: Types, Best Practices en XML Documentatie
- De C# Switch Statement: Syntaxis, Voorbeelden & Best Practices
- De C# Ternaire Operator: Beknopte Gids voor Conditionele Expressies
- C# Break Statement: Hoe en Wanneer Te Gebruiken