Ключевое слово `using` в C# используется в трех основных контекстах: ##### Директивы Using Директивы `using` используются в верхней части файлов C# для указания пространств имен, которые используются в файле. Это позволяет нам обращаться к классам и интерфейсам в этих пространствах имен без полного квалифицированного имени. Например: ```csharp using System; using System.Collections.Generic; ``` После этого вы можете использовать просто `List<T>` вместо `System.Collections.Generic.List<T>` и т.д. ##### Оператор Using Как я упоминал ранее, оператор `using` гарантирует вызов метода `Dispose` для объекта в конце его использования. Он создает блок кода, и в конце этого блока автоматически вызывает `Dispose` для объекта, определенного в выражении `using`. ```csharp using (var reader = new StreamReader("file.txt")) { // Используем reader... } // Здесь reader.Dispose() вызывается автоматически ``` ##### Using Static В C# 6.0 и более новых версиях, `using` можно использовать для импорта статических классов. Это позволяет нам обращаться к статическим членам класса без указания имени класса. ```csharp using static System.Math; // Теперь можно использовать статические методы напрямую var squareRoot = Sqrt(4); ``` Все эти контексты используют ключевое слово `using`, но они имеют разные цели и используются в разных сценариях.