Одна из концепций программирования, на которой я застрял, — это концепция Самости. Чтобы полностью понять себя, я разобью этот пост в блоге на 2 части.
1. Методы класса и экземпляра
2. Использование self для ссылки на текущий экземпляр
Итак, давайте начнем с методов Class vs Instance.
Экземплярный метод — это тот, который
Экземпляр класса возникает при инициализации класса.
Это пример метода экземпляра:
В приведенном выше коде мы определили класс Test.
Мы создали метод инициализации, который принимает строку с именем name
Наш метод экземпляра определен в строке 8 и называется say_name.
Внутри нашего метода экземпляра мы печатаем (помещаем) значение нашей переменной экземпляра @name
В строке 15 мы создаем новый экземпляр нашего тестового класса. Поскольку наш метод инициализации принимает значение, мы должны предоставить значение при создании нового экземпляра. Значение, которое мы предоставили, — это строка «Дженнифер».
В строке 16 мы вызываем наш метод экземпляра say_name.
Результат:
Привет, меня зовут: Дженнифер
Методы класса — это методы, которые работают с классом, а не с экземпляром класса.
Ниже приведен пример того, как выглядит метод класса:
Методы класса работают без экземпляра класса.
В строке 1 мы определяем класс Test.
В строке 3 мы определяем метод класса Square, который принимает целое число.
В строке 10 мы вызываем этот метод, передавая целочисленное значение, которое мы хотим умножить. Это вызывает метод Square, определенный в строке 3, умножая переданное значение на себя, а затем присваивая значение переменной answer. Затем квадратный метод печатает (выводит) ответ на экран.
Результат:
25
Итак, напомним, что методы класса работают с самим классом. Их нельзя вызывать в экземпляре.
Методы экземпляра работают с инициализированным экземпляром класса.