Переопределение метода - C#

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

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

Не могу переопределить в производном классе метод Change, чтобы изменялось еще и грузоподъемность.
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. namespace qwe
  6. {
  7. class Program
  8. {
  9. static void Main(string[] args)
  10. {
  11. car car = new car("BMW", 5, 250);
  12. Console.WriteLine(car.show());
  13. gruzovik gruzovik = new gruzovik("KAMAZ", 5, 250, 100);
  14. Console.WriteLine(gruzovik.show());
  15. Console.WriteLine("Change");
  16. string cn = Convert.ToString(Console.ReadLine());
  17. int cc = int.Parse(Console.ReadLine());
  18. int cp = int.Parse(Console.ReadLine());
  19. int g = int.Parse(Console.ReadLine());
  20. string gname = Convert.ToString(Console.ReadLine());
  21. int gc = int.Parse(Console.ReadLine());
  22. int gp = int.Parse(Console.ReadLine());
  23. int ggruz = int.Parse(Console.ReadLine());
  24. car.change(cn, cc, cp);
  25. gruzovik.change(gname, gc, gp, ggruz);
  26. Console.WriteLine(car.show());
  27. Console.WriteLine(gruzovik.show());
  28. }
  29. }
  30. public class car
  31. {
  32. public string name;
  33. public int c;
  34. public int power;
  35. public car(string name, int c, int power)
  36. {
  37. this.name = name;
  38. this.c = c;
  39. this.power = power;
  40. }
  41. public virtual string show()
  42. {
  43. string s = name + " " + c + " " + power + " ";
  44. return s;
  45. }
  46. public virtual void change(string cn, int cc, int cp)
  47. {
  48. this.name = cn;
  49. this.c = cc;
  50. this.power = cp;
  51. }
  52. ~car()
  53. {
  54. Console.WriteLine("destruction");
  55. }
  56. }
  57. class gruzovik : car
  58. {
  59. public int gruz;
  60. public gruzovik(string name, int c, int power, int gruz)
  61. : base(name, c, power)
  62. {
  63. this.gruz = gruz;
  64. }
  65. public override string show()
  66. {
  67. return base.show() + " " + gruz;
  68. }
  69. public override void change(string cn, int cc, int cp, int ggruz)
  70. {
  71. this.gruz = ggruz;
  72. base.change(cn, cc, cp, ggruz);
  73. }
  74. }
  75. }

Решение задачи: «Переопределение метода»

textual
Листинг программы
  1. public void change(string cn, int cc, int cp, int ggruz)
  2. {
  3.     this.gruz = ggruz;
  4.     base.change(cn, cc, cp);
  5. }

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


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

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

15   голосов , оценка 4.267 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы