Профессор Си
2.93K subscribers
95 photos
2 videos
113 links
Уроки, советы, новости C#.

@aldrson
Download Telegram
Конструкторы и наследование

В иерархии классов допускается, чтобы у базовых и производных классов были свои собственные конструкторы. В связи с этим возникает следующий резонный вопрос: какой конструктор отвечает за построение объекта производного класса: конструктор базового класса, конструктор производного класса или же оба? Давайте разбираться.

Читать статью
👍7
Классы в C#

Класс представляет собой шаблон, по которому определяется форма объекта. В нем указываются данные и код, который будет оперировать этими данными. В C# используется спецификация класса для построения объектов, которые являются экземплярами класса. Следовательно, класс, по существу, представляет собой ряд схематических описаний способа построения объекта.

Запутано? Загляните в статью - там все разобрано с примерами кода!

Читать статью
👍9
Что такое перегрузка методов?

В C# допускается совместное использование одного и того же имени двумя или более методами одного и того же класса, при условии, что их параметры объявляются по-разному. В этом случае говорят, что методы перегружаются, а сам процесс называется перегрузкой методов.

Но давайте лучше рассмотрим это на примере.

Читать статью
👍15
Основы наследования

Разбираем на примере, что такое наследование в принципе и как оно реализовано в C#.

Читать статью
👍6💩2
Многомерные массивы

Многомерным называется такой массив, который отличается двумя или более измерениями, причем доступ к каждому элементу такого массива осуществляется с помощью определенной комбинации двух или более индексов.

Эта статья познакомит вас с двумерными массивами в C#, а также с массивами трех и более измерений.

Читать статью
Перегрузка индексаторов

Как правило, индексаторы перегружаются для того, чтобы использовать объект определенного класса в качестве индекса, вычисляемого каким-то особым образом. В этой статье вы найдете пример использования перегрузки индексаторов.

Читать статью
Создание объектов в C#

Разбираем на примере, как создавать объекты в C#. Также знакомимся с инициализаторами объектов.

Читать статью
👍5
Ступенчатые (зубчатые) массивы

В C# можно создавать специальный тип двумерного массива, называемый ступенчатым. Ступенчатый массив представляет собой массив массивов, в котором длина каждого массива может быть разной. Следовательно, ступенчатый массив может быть использован для составления таблицы из строк разной длины.

Давайте разберемся, как такие массивы создаются и используются.

Читать статью
7👍1
Защищенный доступ и исключение наследования

В C# допускается создание защищенного члена класса. Защищенный член является открытым в пределах иерархии классов, но закрытым за пределами этой иерархии.

Давайте поближе познакомимся с модификатором доступа protected, который позволяет создать такой защищенный член, а также с ключевым словом sealed, исключающим наследование.

Читать статью
👍5
Перегрузка конструкторов

Как и методы, конструкторы также могут перегружаться. Это дает возможность конструировать объекты самыми разными способами.

В этой статье вы найдете пример кода и его разбор.

Читать статью
😁4
Класс Object

В C# предусмотрен специальный класс object, который неявно считается базовым классом для всех остальных классов и типов, включая и типы значений. Иными словами, все остальные типы являются производными от object.

Давайте рассмотрим, в чем практическое значение этого класса, и познакомимся с его методами.

Читать статью
Какие из модификаторов не может иметь абстрактный класс?
Anonymous Quiz
24%
static, internal.
52%
sealed, static.
24%
sealed, internal.
👍3😁3🤔2
Многомерный массив в C# это?
Anonymous Quiz
4%
В C# нет многомерных массивов
1%
int[]
54%
int[,]
41%
int[][]
🤡201
👆 Пояснение к предыдущему вопросу

👨🏻‍💻 Массивы характеризуются таким понятием как ранг или количество измерений. Существуют массивы, которые имеют одно измерение (то есть их ранг равен 1) - такие массивы можно представлять в виде горизонтального ряда элемента.

Но массивы также бывают многомерными. У таких массивов количество измерений (то есть ранг) больше 1. Массивы которые имеют два измерения (ранг равен 2) называют двухмерными.
👆 Пояснение к предыдущему вопросу

👨🏻‍💻 Все инструкции на c# очень тесно связанны со стеком. Даже простые операции вроде сложения чисел проходят через стек. И циклы фактически тоже разворачиваются в стековые инструкции.

Любая программа в .NET имеет свой менеджер памяти, который занимается автоматическим выделением памяти под объекты и очисткой памяти после объектов (сборка мусора). Это значит что программист не заботится о выделении памяти и ее очистке. Такой тип памяти называется управляемой памятью. И все объекты, которые вы создаете в .NET располагаются в управляемой памяти.

Это все встроенные типы: int, string, double, Array, List<> и т.п. Все они - управляемые объекты и располагаются в управляемой памяти.
7👍4
Какой тип данных используется для представления символов в C#?
Anonymous Quiz
6%
string
91%
char
1%
text
3%
symbol
🤔8
Какая конструкция используется для выполнения повторяющихся действий?
Anonymous Quiz
1%
if
5%
switch
92%
for
2%
try
🤡20👍1🤔1
Как объявить массив целых чисел в C#?
Anonymous Quiz
79%
int[] array;
1%
array<int>;
16%
int array[];
4%
Array<int> array;
🤡37🤔3👍1