php - qué - ¿Cuál es la diferencia entre un método y una función?
funciones y metodos en programacion (7)
Ambos se usan indistintamente, pero la función es la terminología utilizada en los lenguajes estructurales y el método es la terminología utilizada en Langauages orientados a objetos. También existen métodos dentro de los objetos, mientras que las funciones también pueden existir sin objetos.
¿Cuál es la diferencia entre un método y una función? ¿Es que un método devuelve un valor y una función no?
Definimos el método dentro de la clase, definimos la clase lateral de la función, la función no es parte de la clase
El método es en realidad una función utilizada en el contexto de una clase / objeto.
Cuando crea una función fuera de una clase / objeto, puede llamarlo una función, pero cuando crea una función dentro de una clase, puede llamarlo como un método .
class foo {
public function bar() { // a method
........
}
}
function bar() { // a function not part of an object
}
Entonces un objeto puede tener métodos (funciones) y propiedades (variables).
En una línea, un método es una función, pero una función no es necesariamente un método. La diferencia es que un método se usa para describir funciones definidas en clases que se usan con instancias de esas clases.
package {class Example {
public function iAmAMethod():void {
addEventListener("listenerFunctionIsNotAMethod", function(event:Event):void {
trace("inline function, yay!");
});
}
}
La diferencia entre las expresiones "método" y "función" es que un "método" es una función miembro de una clase, mientras que una función independiente no lo hace, y una función independiente suele existir en un contexto global.
La función es un término genérico que se utilizará en el enfoque de programación procedimental donde Método es un término que se utilizará en el enfoque de programación orientado a objetos para definir una propiedad de clase.
Las palabras no se oponen entre sí, sino que describen dos aspectos posibles de una subrutina. Un intento de definir las palabras sigue:
Subrutina: conjunto de instrucciones que se pueden usar varias veces en el mismo programa.
Función: una subrutina que devuelve un valor. Derivado de funciones en matemáticas ( wikipedia ).
Método: una subrutina que pertenece a un objeto o una clase. Podría ser una función
Tiendo a usar la palabra "función" para cada subrutina que no tiene efectos secundarios pero devuelve un valor claro y la palabra "método" para cada subrutina que tiene un efecto secundario.