Любой класс внутри себя должен хранить какую-нибудь информацию. Текстовую, числовую, булеву.
Например, животное имеет кличку, электрический прибор название компании, габариты и напряжение.
Прямоугольник имеет размер двух сторон.
Человек имеет рост, вес, имя, фамилию.
И т.д.
Класс - это шаблон объекта. Ведь в программе может описываться много разных животных, эл.приборов, геометрических фигур, людей. Задавая я это в шаблоне, мы получаем образец, по которому будем видеть данные о конкретном объекте.
Создадим класс "прямоугольник" c
конструктором:
[code]
class Rectangle
{
public double a;
public double b;
public Rectangle(double sideA, double sideB)
{
a = sideA;
b = sideB;
}
}
[/code]
Теперь можно создать, например, 3 прямоугольника на основе этого класса:
[code]
Rectangle r1 = new Rectangle(34.8, 16.9);
Rectangle r2 = new Rectangle(123, 100);
Rectangle r3 = new Rectangle(29.4, 71.6);
[/code]
Теперь по коду
[code]
r1.a
[/code]
мы получим значение стороны А первого прямоугольника. Это 34.8
В данном случае "а" и "b" - это поля класса.
Больше параметров было бы в классе "Паспорт". Там больше данных:
[code]
class Passport
{
public int seria;
public int number;
public string surname;
public string name;
public string dateBirth;
public Passport(int ser, int num, string snm, string nm, string dt)
{
seria = ser;
number = num;
surname = snm;
name = nm;
dateBirth = dt;
}
}
[/code]
И для ввода данных о человеке используем:
[code]
Passport p = new Passport(1111, 222222, "Иванов", "Александр", "26.04.1986");
[/code]
Однако с такими данными необходимо работать через фильтр, используя
свойства
Дело в том, что поле, это просто такая возможность хранить данные. Любые, соответствующие типу (double, string). Не более. Например:
[code]
Passport p = new Passport(1, 2, "Иванов", "", "226.44.-2876");
[/code]
такая строка содержит кучу ошибок, однако компьютер это воспримет и сохранит, т.к. ему не указано, что серия может быть от 1000 до 9999, что имя и фамилия не должны быть пустыми и определённые правила хранения даты.
В данном случае string использовался для наглядности. А так, конечно, надо использовать тип для работы с датой
DateTime
Дополнительная информация о том, как вывести результат в
консоли или
WinForm