Реализация интерфейсов класса - C#

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

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

Есть класс интерфейс:
Листинг программы
  1. interface Transport
  2. {
  3. void SetName(string name);
  4. void SetTonnage(int tonnage);
  5. void SetCost(double cost);
  6. }
Нужно реализовать его функции в классе наследнике:
Листинг программы
  1. class Car : Transport // ERROR!
  2. {
  3. private string name;
  4. private int tonnage;
  5. private double cost;
  6. protected virtual void SetName(string name)
  7. {
  8. this.name = name;
  9. }
  10. protected virtual void SetTonnage(int tonnage)
  11. {
  12. this.tonnage = tonnage;
  13. }
  14. protected virtual void SetCost(double cost)
  15. {
  16. this.cost = cost;
  17. }
  18. }
Но VisualStudio 2015 пишет, что в классе не реализованы методы интерфейса (хз правильно ли я сформулировал). Далее, нужно унаследовать класс Car и переопределить все три функции в классах:
Листинг программы
  1. class Sedan : Car
  2. {
  3. }
  4. class Truck : Car
  5. {
  6. }
Помогите разобраться, плс. п.с. весь код:
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace Lab_2_option_2
  7. {
  8. interface Transport
  9. {
  10. void SetName(string name);
  11. void SetTonnage(int tonnage);
  12. void SetCost(double cost);
  13. }
  14. class Car : Transport
  15. {
  16. private string name;
  17. private int tonnage;
  18. private double cost;
  19. protected virtual void SetName(string name)
  20. {
  21. this.name = name;
  22. }
  23. protected virtual void SetTonnage(int tonnage)
  24. {
  25. this.tonnage = tonnage;
  26. }
  27. protected virtual void SetCost(double cost)
  28. {
  29. this.cost = cost;
  30. }
  31. }
  32. class Sedan : Car
  33. {
  34. }
  35. class Truck : Car
  36. {
  37. }
  38. }

Решение задачи: «Реализация интерфейсов класса»

textual
Листинг программы
  1.         static void Main(string[] args)
  2.         {
  3.             Console.Write(" Enter the brand name of the car: ");
  4.             string name = Console.ReadLine();
  5.             Console.Write(" Enter the tonnage of the car: ");
  6.             int tonnage;
  7.             int.TryParse(Console.ReadLine(), out tonnage);
  8.             Console.Write(" Enter the cost of the car: ");
  9.             double cost;
  10.             double.TryParse(Console.ReadLine(), out cost);
  11.  
  12.             Sedan car1 = new Sedan(name, tonnage, cost); // ERROR!!!
  13.         }

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


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

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

6   голосов , оценка 4.667 из 5

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

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

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