方法和功能有什么区别?

时间:2011-01-30 06:55:08

标签: php

方法和功能有什么区别?是方法返回值而函数不是吗?

8 个答案:

答案 0 :(得分:138)

方法是实际上是类/对象的上下文中使用的函数

当您在类/对象之外创建函数时,可以将其称为函数,但是当您在类中创建函数时,可以将其称为方法

class foo {
   public function bar() { // a method
     ........
   }
}

function bar() {  // a function not part of an object
}

所以对象可以有方法(函数)和属性(变量)。

答案 1 :(得分:7)

这些词语并不相互对立,而是描述了子程序的两个可能方面。尝试定义单词如下:

子程序:一组可在同一程序中多次使用的指令。

功能:返回值的子程序。源自数学中的函数(wikipedia)。

方法:属于对象或类的子例程。可能是一个功能。

对于每个没有副作用的子程序,我倾向于使用“function”这个词,但是每个子程序都会返回一个清除值和“method”一词。

答案 2 :(得分:5)

表达式“method”和“function”之间的区别在于“method”是类的成员函数,而独立函数则不是,并且独立函数通常存在于全局上下文中。

答案 3 :(得分:2)

两者可互换使用,但函数是结构语言中使用的术语,而方法是面向对象语言中使用的术语。此外,对象存在于对象中,而函数也可以在没有对象的情况下存在。

答案 4 :(得分:2)

函数是在过程式编程方法中使用的通用术语,其中Method是在面向对象的编程方法中用于定义类属性的术语。

答案 5 :(得分:1)

我们在类中定义方法,我们定义函数out side class,函数不是class

的一部分

答案 6 :(得分:0)

在一行中,方法是一个函数,但函数不一定是方法。不同之处在于,方法用于描述在与这些类​​的实例一起使用的类中定义的函数。

package {class Example {
  public function iAmAMethod():void {
     addEventListener("listenerFunctionIsNotAMethod", function(event:Event):void {
        trace("inline function, yay!");
     });
  }

}

答案 7 :(得分:0)

方法和功能是相同的东西,但它们的上下文不同。 类中的函数称为方法。喜欢:

class foo{
   function bar(){ //code }       

}

在这种情况下 bar() 是一种方法。要执行此方法,您必须创建一个 foo 类的对象并像这样调用它 $foo->bar();

你可以在类之外写一个函数。

bar(){ //code }

你可以称之为 bar()