Спрятать метод интерфейса - C#
Формулировка задачи:
Ребята. Реализую интерфейс, в котором определён метод volume(объём). Хочу, чтобы этот метод был не доступен вне этого класса. Реализую его через имя интерфейса, но у меня есть ещё метод Show(), в котором я хочу использовать этот метод volume(). Подскажите, как создать ссылку на интерфейс и чтобы через неё обращаться к методу volume()?IFigur fig если создавать так, то говорит, что ссылка пустая.
Листинг программы
- enum Figur { Пирамида, Сфера}
- public interface IFigure
- {
- double volume();
- void Show();
- }
- class Pyramids : IFigure
- {
- int weight;
- int height;
- int length;
- public Pyramids(int w, int l, int h)
- {
- weight = w;
- length = l;
- height = h;
- }
- public double volume()
- {
- return 1 / 3.0 * weight * length * height;
- }
- public void Show()
- {
- Console.WriteLine("{0} имеет длину {1}, ширину {2}, высоту {3}. Объём данной фигуры равен {4:#.##}", Figur.Пирамида.ToString(), length, weight, height, volume());
- }
- }
Решение задачи: «Спрятать метод интерфейса»
textual
Листинг программы
- Pyramids p = new Pyramids(3,2,6);
- // Создадим ссылку на интерфейс
- IFigure obj;
- //Используем ссылку на объект p
- obj = p;
- obj.show();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д