Как сделать класс полем другого класса? - 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) и вывести на консоль его новую массу.
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace zadanie2 { class M : Vv { private string name; // имя private Vv // тут должен быть класс private decimal obiem; } class Vv { private string namev; // имя private decimal plotnost; // плотность public string Namev { get{return namev;} set{namev = value;} } public Vv(string Namev, decimal Plotnost) { namev = Namev; plotnost = Plotnost; } public Vv() { namev = "Empty"; plotnost = 0; } public decimal Plotnost { get { return plotnost; } set { plotnost = value; } } static void Main(string[] args) { } } }
Решение задачи: «Как сделать класс полем другого класса?»
textual
Листинг программы
class Material { private string name; private double d; public Material() { } public Material(string newName,double newV) { D = newV; Name = newName; } public string Name { get { return name; } set { name = value; } } public double D { get { return d; } set { d = value; } } public override string ToString() { return string.Format("{0};{1}" , Name , D); } } class Article { private Material material; private double vol; private string name; public Article() { } public Article(string articleName,double articleVolume,Material articleMaterial) { Mat = articleMaterial; Name = articleName; Vol = articleVolume; } public double Vol { get { return vol; } set { vol = value; } } public string Name { get { return name; } set { name = value; } } public Material Mat { get { return material; } set { material = value; } } public double GetMass() { return material.D * Vol; } public override string ToString() { return string.Format("{0};{1};{2};{3}" , Name , Mat.ToString() , Vol , this.GetMass()); } } class Program { static void Main(string[ ] args) { Article art = new Article("Steel wire" , 0.03 , new Material("Steel" , 7850)); Console.WriteLine(art.ToString()); art.Mat.Name = "Cuprum"; art.Mat.D = 8500;//Формально было бы лучше метод для смены материала сделать, но в условии этого не требуют. Console.WriteLine(art.ToString()); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д