Спрятать метод интерфейса - C#

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

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

Ребята. Реализую интерфейс, в котором определён метод volume(объём). Хочу, чтобы этот метод был не доступен вне этого класса. Реализую его через имя интерфейса, но у меня есть ещё метод Show(), в котором я хочу использовать этот метод volume(). Подскажите, как создать ссылку на интерфейс и чтобы через неё обращаться к методу volume()?IFigur fig если создавать так, то говорит, что ссылка пустая.
Листинг программы
  1. enum Figur { Пирамида, Сфера}
  2. public interface IFigure
  3. {
  4. double volume();
  5. void Show();
  6. }
  7. class Pyramids : IFigure
  8. {
  9. int weight;
  10. int height;
  11. int length;
  12. public Pyramids(int w, int l, int h)
  13. {
  14. weight = w;
  15. length = l;
  16. height = h;
  17. }
  18. public double volume()
  19. {
  20. return 1 / 3.0 * weight * length * height;
  21. }
  22. public void Show()
  23. {
  24. Console.WriteLine("{0} имеет длину {1}, ширину {2}, высоту {3}. Объём данной фигуры равен {4:#.##}", Figur.Пирамида.ToString(), length, weight, height, volume());
  25. }
  26. }

Решение задачи: «Спрятать метод интерфейса»

textual
Листинг программы
  1. Pyramids p = new Pyramids(3,2,6);
  2.    // Создадим ссылку на интерфейс
  3. IFigure obj;
  4. //Используем ссылку на объект p
  5.   obj = p;
  6.    obj.show();

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


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

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

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

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

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

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