Ключевое слово static
Ключевое слово static
Как уже говорилось в этой главе, члены классов (и структур) в C# могут определяться с ключевым cловом static В этом случае соответствующий член должен вызываться непосредственно на уровне класса, а не экземпляра типа. Для иллюстрации рассмотрим "знакомый" тип System.Console. Вы уже могли убедиться, что метод WriteLine() вызывается не с объектного уровня.
// Ошибка! WriteLine() – это не метод уровня экземпляра!
Console с = new Console();
c.WriteLine ("Так печатать я не могу…");
Вместо этого нужно просто добавить префикс имени типа к имени статического члена WriteLine().
// Правильно! WriteLine() – это статический метод.
Console.WriteLine("Спасибо…");
Можно сказать, что статические члены являются элементами, которые (до мнению разработчика типа) оказываются "слишком банальными", чтобы создавать для них экземпляры типа. При создании типа класса вы можете определить любое число статических членов и/или членов уровня экземпляра.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Создаем директорию $LFS/static
Создаем директорию $LFS/static Как уже говорилось во вступлении в данную главу, все, что будет инсталлировано в этой главе, попадет в директорию $LFS/static, чтобы не загрязнять раздел LFS кучей временных файлов. Нам необходимо лишь создать эту директорию:mkdir $LFS/staticДля удобства можно
14. Объявление переменной на внутреннем уровне с классом памяти static
14. Объявление переменной на внутреннем уровне с классом памяти static В качестве примера рассмотрим объявление переменной i на внутреннем уровне с классом памяти static.исходный файл filel.сmain(){}fun1(){static int i = 0; исходный файл file2.c fun2(){static int i = 0; }fun3(){static int i = 0; }В этом примере
Ключевое средство отладки: окно Watches
Ключевое средство отладки: окно Watches Когда вы освоите работу с окном Locals, работа с окном Watches (Окно контролируемых выражений) покажется просто забавой. Окно Watches делает, по сути, то же самое, что и окно Locals, но с одним очевидным отличием - те выражения, значения которых будут
Хранение семейных тайн: ключевое слово protected
Хранение семейных тайн: ключевое слово protected Вы уже знаете, что открытые элементы непосредственно доступны отовсюду, а приватные элементы недоступны для объектов вне класса, определяющего эти элементы. Язык C#, занимающий лидирующие позиции среда многих других
Получение интерфейсных ссылок: ключевое слово as
Получение интерфейсных ссылок: ключевое слово as Второй способ проверить поддержку интерфейса для данного типа предполагает использование ключевого слова as, о котором уже шла речь в главе 4. Если объект можно интерпретировать, как указанный интерфейс, будет возвращена
Получение интерфейсных ссылок: ключевое слово is
Получение интерфейсных ссылок: ключевое слово is Можно также проверить реализацию интерфейса с помощью ключевого слова is. Если соответствующий объект не совместим указанным интерфейсом, будет возвращено значение false. А если тип совместим с интерфейсом, вы можете смело
Ключевое слово checked
Ключевое слово checked Вы, несомненно, прекрасно знаете, что любой числовой тип данных имеет свои строго заданные верхний и нижний пределы (значения которых можно выяснить программными средствами с помощью свойств MaxValue и MinValue). При выполнении арифметических операций с
Ключевое слово unchecked
Ключевое слово unchecked В предположении, что вы активизировали проверку переполнения для всего проекта, как разрешить игнорирование переполнений для тех блоков программного кода, где "молчаливая реакция" на переполнение вполне приемлема? Поскольку флаг /checked предполагает
Ключевое слово sizeof
Ключевое слово sizeof В заключение обсуждения вопросов, связанных с небезопасным контекстом в C#, рассмотрим ключевое слово sizeof. Как и в C(++), ключевое слово C# sizeof используется для того, чтобы выяснить размер в байтах типа, характеризуемого значениями (но не ссылочного типа), и
КЛЮЧЕВОЕ СЛОВО return
КЛЮЧЕВОЕ СЛОВО return Принципы программирования на языке Си основаны на понятии функции. В представленных ранее примерах программирования мы уже воспользовались несколькими функциями: printf( ), scanf( ), getchar( ), putchar( ) и strlen( ). Эти функции являются системными, однако мы
КЛЮЧЕВЫЕ СЛОВА: auto, extern, static, register
КЛЮЧЕВЫЕ СЛОВА: auto, extern, static, register Одно из достоинств языка Си состоит в том, что он позволяет управлять ключевыми механизмами программы. Классы памяти языка Си - пример такого управления; они дают возможность определить, с какими функциями связаны какие переменные и
Ключевое слово this
Ключевое слово this Ключевое слово this представляет собой указатель на текущий объект класса. Методы класса могут использовать ключевое слово this чтобы получить указатель на объект для которого вызван данный метод. Указатель this представляет собой постоянную величину, вы не
Статическая типизация (static typing)
Статическая типизация (static typing) Когда в системе происходит вызов некоторого компонента определенным объектом, как узнать, что объект способен обработать вызов? (В терминологии сообщений: как узнать, что объект может обработать сообщение?) Чтобы гарантировать корректное
Заключительное слово
Заключительное слово Фух! Вот уж не ожидал, что это займёт столько времени.Надеюсь, эта книга навеяла вам несколько полезных идей, будь вы новичками или уже бывалыми специалистами.Поскольку Scrum всё равно необходимо подстраивать под каждую конкретную среду, спор по поводу