- Сообщения
- 2.141
- Реакции
- 2.536
в 16 уроке мет рассказывал про классы, ну вот я продолжу эту тему.
Он объявлял переменные открытыми(public), вобще не рекомендуется объявлять их открытыми если с ними работают только методы. Эти переменные из любой части кода вызываются с помощью объектов класса. Ну вобще существует не только этот модификатор(public) есть еще 3: internal - переменные доступны в пределах 1 namespace, private - переменные доступны только в пределах класса и protected - почти такойже как и private, но только переменные доступны еще и классам наследникам. И про методы они также могут быть с такими же модификаторами(public, private и т.д) и могут возращать значение(int, double, bool и т.д) и если метод возращает значение у него должны быть параметры(то что у метода в скобках), они объявляются как переменные и разделяются запятыми и при вызове метода их указывают значения для них в порядке их объявления. И сделаем консольный калькулятор.
И кстати возврат значений осуществляется с помощью ключевого слово return. Так же метод Main() как и другие методы может возвращать значение(я сделал это чтобы показать применения оператора return).
Он объявлял переменные открытыми(public), вобще не рекомендуется объявлять их открытыми если с ними работают только методы. Эти переменные из любой части кода вызываются с помощью объектов класса. Ну вобще существует не только этот модификатор(public) есть еще 3: internal - переменные доступны в пределах 1 namespace, private - переменные доступны только в пределах класса и protected - почти такойже как и private, но только переменные доступны еще и классам наследникам. И про методы они также могут быть с такими же модификаторами(public, private и т.д) и могут возращать значение(int, double, bool и т.д) и если метод возращает значение у него должны быть параметры(то что у метода в скобках), они объявляются как переменные и разделяются запятыми и при вызове метода их указывают значения для них в порядке их объявления. И сделаем консольный калькулятор.
Код:
using System; //подключаем пространство имен
class Program
{
/*
* назначаем 2 закрытые переменные
* типа double модификатор можно
* не указывать т.к он по умол
* чанию закрытый(private)
*/
double FN = 0.0;
double SN = 0.0;
public void SetFNandSN() //делаем открытый метод не возвращающий значение
{
Console.WriteLine();
Console.Write("Введите 1 число: ");
FN = Convert.ToDouble(Console.ReadLine());
Console.Write("Введите 2 число: ");
SN = Convert.ToDouble(Console.ReadLine());
/*
* вызываем метод SimpleCalculate
* и не нужно создавать объект т.к
* метод в этом же классе
*/
SimpleCalculate();
}
void SimpleCalculate() //создаем закрытый метод т.к он вызывается только из этого класса
{
Console.WriteLine();
Console.WriteLine("Сумма: " + (FN + SN));
Console.WriteLine("Разность: " + (FN - SN));
Console.WriteLine("Частное: " + (FN / SN));
Console.WriteLine("Произведение: " + (FN * SN));
Console.WriteLine();
}
}
class DemoProgram
{
static int Main()
{
Program ob = new Program(); //создаем новый объект
int intvar1 = 0;
Console.WriteLine("Сколько раз производить вычисления?");
intvar1 = Convert.ToInt32(Console.ReadLine()); //конвертируем наш ответ в тип int
for(int i = 0; i < intvar1; i++)
{
ob.SetFNandSN(); //вызываем метод
}
Console.ReadKey(); //ожидаем нажатия любой клавиши
return 0; //возвращаем значение 0 т.к Main() должен возвращать значение int
}
}
И кстати возврат значений осуществляется с помощью ключевого слово return. Так же метод Main() как и другие методы может возвращать значение(я сделал это чтобы показать применения оператора return).