Как сделать класс полем другого класса? - C#

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

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

может я не так понял задание Разработать класс, описывающий некоторый физический материал( вещество). Поля:  имя,  плотность. Конструкторы:  по умолчанию;  с параметрами. Методы:  getters/setters;  ToString( ) – значения полей объекта в csv формат. Пример: steel;7850 Разработать класс, описывающий однородный предмет, состоящий из одного материала. Поля:  имя,  материал (класс, разработанный выше),  объём. Конструкторы:  по умолчанию;  с параметрами. Методы:  getters/setters;  GetMass( ) – вычисление массы предмета (= плотность * объём);  ToString( ) – объект в строку в csv формате. Пример: wire;steel;7850;0.03;235.5 В методе Main(…) консольного приложения сделать следующее: 1 Создать объект Стальной_Провод из стали в объёме 0.03м3. 2 Вывести объект на консоль с использованием ToString( ). 3 Изменить материал провода на медь (плотность = 8500) и вывести на консоль его новую массу.
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. namespace zadanie2
  6. {
  7. class M : Vv
  8. {
  9. private string name; // имя
  10. private Vv // тут должен быть класс
  11. private decimal obiem;
  12. }
  13.  
  14. class Vv
  15. {
  16. private string namev; // имя
  17. private decimal plotnost; // плотность
  18. public string Namev
  19. {
  20. get{return namev;}
  21. set{namev = value;}
  22. }
  23. public Vv(string Namev, decimal Plotnost)
  24. {
  25. namev = Namev;
  26. plotnost = Plotnost;
  27. }
  28. public Vv()
  29. {
  30. namev = "Empty";
  31. plotnost = 0;
  32. }
  33. public decimal Plotnost
  34. {
  35. get { return plotnost; }
  36. set { plotnost = value; }
  37. }
  38. static void Main(string[] args)
  39. {
  40. }
  41. }
  42. }

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

textual
Листинг программы
  1. class Material
  2.     {
  3.         private string name;
  4.         private double d;
  5.  
  6.         public Material() { }
  7.  
  8.         public Material(string newName,double newV)
  9.         {
  10.             D = newV;
  11.             Name = newName;
  12.         }
  13.  
  14.         public string Name
  15.         {
  16.             get
  17.             {
  18.                 return name;
  19.             }
  20.             set
  21.             {
  22.                 name = value;
  23.             }
  24.         }
  25.  
  26.         public double D
  27.         {
  28.             get
  29.             {
  30.                 return d;
  31.             }
  32.             set
  33.             {
  34.                 d = value;
  35.             }
  36.         }
  37.  
  38.         public override string ToString()
  39.         {
  40.             return string.Format("{0};{1}" , Name , D);
  41.         }
  42.     }
  43.  
  44.     class Article
  45.     {
  46.         private Material material;
  47.         private double vol;
  48.         private string name;
  49.  
  50.         public Article() { }
  51.  
  52.         public Article(string articleName,double articleVolume,Material articleMaterial)
  53.         {
  54.             Mat = articleMaterial;
  55.             Name = articleName;
  56.             Vol = articleVolume;
  57.         }
  58.  
  59.         public double Vol
  60.         {
  61.             get
  62.             {
  63.                 return vol;
  64.             }
  65.             set
  66.             {
  67.                 vol = value;
  68.             }
  69.         }
  70.  
  71.         public string Name
  72.         {
  73.             get
  74.             {
  75.                 return name;
  76.             }
  77.             set
  78.             {
  79.                 name = value;
  80.             }
  81.         }
  82.  
  83.         public Material Mat
  84.         {
  85.             get
  86.             {
  87.                 return material;
  88.             }
  89.             set
  90.             {
  91.                 material = value;
  92.             }
  93.         }
  94.  
  95.         public double GetMass()
  96.         {
  97.             return material.D * Vol;
  98.         }
  99.  
  100.         public override string ToString()
  101.         {
  102.             return string.Format("{0};{1};{2};{3}" , Name , Mat.ToString() , Vol , this.GetMass());
  103.         }
  104.     }
  105.  
  106.     class Program
  107.     {
  108.         static void Main(string[ ] args)
  109.         {
  110.             Article art = new Article("Steel wire" , 0.03 , new Material("Steel" , 7850));
  111.             Console.WriteLine(art.ToString());
  112.             art.Mat.Name = "Cuprum";
  113.             art.Mat.D = 8500;//Формально было бы лучше метод для смены материала сделать, но в условии этого не   требуют.
  114.             Console.WriteLine(art.ToString());
  115.         }
  116.     }

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


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

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

12   голосов , оценка 3.917 из 5

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

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

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