Що таке Casting (Приведення типів) в C#?
Приведення типів, або casting, C# — це процес зміни типу значення змінної. Приведення може бути явним (explicit) або неявним (implicit) і воно часто використовується для сумісності типів при виконанні операцій. Ось основні моменти та приклад використання наведення типів:
// Базовий клас
public class Shape
{
public virtual void Display()
{
Console.WriteLine("Generic shape");
}
}
// Похідний клас
public class Circle : Shape
{
public override void Display()
{
Console.WriteLine("This is a circle");
}
public void DrawCircle()
{
Console.WriteLine("Drawing a circle");
}
}
class Program
{
static void Main()
{
// Створення об'єкта похідного класу
Circle myCircle = новий Circle();
// Явне приведення до базового класу
Shape genericShape = (Shape)myCircle;
// Виклик методу базового класу
genericShape.Display(); // "This is a circle"
// Явне приведення дозволяє викликати методи похідного класу
if (genericShape is Circle)
{
Circle castedCircle = (Circle)genericShape;
castedCircle.DrawCircle(); // "Drawing a circle"
}
}
}
Коментарі