方法和函数之间有什么区别?

php
2022-08-30 09:28:02

方法和函数之间有什么区别?是一个方法返回一个值,而一个函数不返回一个值吗?


答案 1

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

在类/对象外部创建函数时,可以将其称为函数,但在类内创建函数时,可以将其称为方法

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

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

因此,对象可以具有方法(函数)和属性(变量)。


答案 2

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

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

功能:返回值的子例程。源自数学中的函数(维基百科)。

方法:属于对象或类的子例程。可以是一个函数。

我倾向于对每个没有副作用但返回一个明确值的子例程使用单词“function”,对于每个有副作用的子例程返回单词“method”。


推荐