В чем разница между методом и функцией? Это значит, что метод возвращает значение, а функция не работает?
В чем разница между методом и функцией?
Ответ 1
Метод - фактически функция, используемая в контексте класса/объекта.
Когда вы создаете функцию вне класса/объекта, вы можете называть ее функцией, но когда вы создаете функцию внутри класса, вы можете назвать ее методом.
class foo {
public function bar() { // a method
........
}
}
function bar() { // a function not part of an object
}
Таким образом, объект может иметь методы (функции) и свойства (переменные).
Ответ 2
Слова не противоречат друг другу, а скорее описывают два возможных аспекта подпрограммы. Попытка определить слова следует:
Подпрограмма: Набор инструкций, которые можно использовать несколько раз в одной программе.
Функция: Подпрограмма, которая возвращает значение. Производится из функций в математике (wikipedia).
Метод:. Подпрограмма, принадлежащая объекту или классу. Может быть функцией.
Я обычно использую слово "функция" для каждой подпрограммы, которая не имеет побочных эффектов, но возвращает одно четкое значение и слово "метод" для каждой подпрограммы, которая имеет побочный эффект.
Ответ 3
Разница между выражениями "метод" и "функция" заключается в том, что "метод" является функцией-членом класса, тогда как автономная функция не существует, а автономная функция обычно существует в глобальном контексте.
Ответ 4
Оба используются взаимозаменяемо, но функция - это терминология, используемая в структурных языках, а метод - это терминология, используемая в объектно-ориентированных ленгауагах. Также существуют методы в объектах, в то время как функции могут существовать и без объектов.
Ответ 5
Функция - это общий термин, который будет использоваться в процедурном программировании, где метод - это термин, который будет использоваться в объектно-ориентированном программировании для определения свойства класса.
Ответ 6
Мы определяем метод внутри класса, определяем функцию из бокового класса, функция не является частью класса
Ответ 7
В одной строке метод является функцией, но функция не обязательно является методом. Разница заключается в том, что метод используется для описания функций, определенных в классах, которые используются с экземплярами этих классов.
package {class Example {
public function iAmAMethod():void {
addEventListener("listenerFunctionIsNotAMethod", function(event:Event):void {
trace("inline function, yay!");
});
}
}