Методы в С#
В данной статье мы рассмотрим с Вами, что представляют из себя методы в С#, как их использовать и какие требования к ним существуют.
Итак, прежде всего метод - это именованный участок кода программы (класса), который может быть переиспользован много раз в различных частях программы.
С одним из методов Main вы уже знакомы - это так называемый entry point (точка вход) - метод, с которого начинается выполнение практически любой программы.
Вот так выглядит упрощено концептуальная модель метода:
[<Модификаторы>] <Тип> <НазваниеМетода> ([тип1 параметр1, тип1 параметр2])
{
// какие-то действия
return <Значение> с типом <Тип>
}
где <Тип> - это тип возвращаемого методом значения, <НазваниеМетода> - с заглавной буквы, далее в скобках необязательный список параметров метода, являющихся частью его сигнатуры, - в том случае, если метод принимает параметры. В противном случае скобки будут пустыми.
Далее парные фигурные скобки - закрывающая и открывающая - обозначают тело метода.
Вот пример непосредственно на самом C#:
class App
{
public static void Method1(string a)
{
// тело метода
}
}
В данном случае у нас есть статический метод (модификатор static), который ничего не возвращает - void и принимает только один параметр - произвольную строку.
Здесь необходимо обратить внимание на модификатор static. Данный модификатор говорит, что для вызова метода не нужно создавать экземпляр класса через оператор new, а просто вызвать метод с помощью оператора точка после имени класса - App.Method1("привет").
Кроме того, в статическом методе, недоступна ссылка на this (экземпляр объекта), поэтому внутри статического метода нельзя обратиться к переменным и методам экземпляра класса, созданного с помощью оператора new.
Также, к методу выше можно получить доступ отовсюду, вызвав его через имя класса - это благодаря ключевому слову public. Если же вместо public там было бы private - то это метод нельзя было бы вызвать за пределами класса.
Таким образом, как видно, методы в C# - очень похожи на методы в других объектно-ориентированных языках, особенно на методы Java, хотя, если у Вас есть опыт работы с PHP, вам они тоже не покажутся чем-то сложным и непонятным - единственное различие это строгая типизация С#, по сравнению c PHP.
-
- Михаил Русаков
Комментарии (0):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.