Недавно я изучал повышение и понижение приведения в С#. Я понимаю, что повышение уровня относится к преобразованию из производного класса в базовый класс. Однако, когда я вижу практический пример повышения приведения (как показано ниже), я запутался.
public class Shape
{
...
}
public class Circle : Shape
{
...
}
Circle circle = new Circle();
Shape shape = new Shape();
// Converting an object into its base class reference
shape = circle
Если мы преобразуем круг в ссылку на его базовый класс, не должно ли это быть похоже на
circle = shape
Извините, если это звучит слишком любительски. Это потому, что я всегда видел выражения в следующем формате:
int x = 3; // means assign 3 to variable x.
Так что я просто смущен, почему круг находится справа, а не слева. Пожалуйста, порекомендуйте. Считайте меня новичком.