Как наследовать и переопределить метод? - C#

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток! Такой вопрос - можно ли наследовать метод и при этом переопределить его? Пробовал вот так:
    class Point2D
    {    
        ...
        public virtual float Distance2(Point2D a) //метод объекта
        {
            var result = Math.Sqrt(Math.Pow((this.x - a.x), 2) + Math.Pow((this.y - a.y), 2));
            return (float)result;
        }
      ...
     }
    class Point3D: Point2D
    {
        ...
        public override float Distance2(Point3D с)
        {
            var result = Math.Sqrt(Math.Pow((this.x - с.x), 2) + Math.Pow((this.y - с.y), 2) + Math.Pow((this.z - с.z), 2));
            return (float)result;
        }
       ....
С уважением.

Решение задачи: «Как наследовать и переопределить метод?»

textual
Листинг программы
public virtual void ShiftX(float shiftx) //сдвигает точку по Х на величину аргумента
        {
            Console.WriteLine("Shift point by X on {0}", shiftx);
            this.x += shiftx;
        }
.......
public override void ShiftX(float shiftx2)
        {
            base.ShiftX(shiftx2);
            //Console.WriteLine("Shift point by X on {0}", shiftx2);
           // this.x1 += shiftx2;
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.733 из 5
Похожие ответы