功能和方法有什么区别?
任何人都可以用合适的例子说出来吗?
并说有什么区别?我们说一些例程被称为函数,它被称为方法?
提前致谢
答案 0 :(得分:0)
函数或方法是一段命名的可调用代码,它执行一些操作并可选地返回一个值。
在 c 语言中使用术语函数。 Java & C#人们调用这些方法(在这种情况下,函数在类/对象中定义)。
C ++程序员可能会将其称为函数或有时称为方法(取决于它们是否正在编写程序样式的c ++代码或者是否采用面向对象的c ++方式)。
你只需调用它的名称就可以调用一个函数,如result = mySum(num1, num2);
您可以通过首先引用其对象来调用方法,如
result = MyCalc.mySum(num1,num2);
检查CubanAzucy答案中的链接。已经在Stack Overflow上详细讨论了它。
答案 1 :(得分:0)
函数是一段按名称调用的代码。它可以传递数据来操作(即参数),并且可以选择性地返回数据(返回值)。
传递给函数的所有数据都是显式传递的。
方法是通过名称与对象关联的一段代码。在大多数方面,除了两个关键差异外,它与功能相同。
它隐式传递了调用它的对象 它能够对类中包含的数据进行操作(记住对象是类的实例 - 类是定义,对象是该数据的实例)
一般来说:方法是属于类的函数,函数可以在代码的任何其他范围内,因此您可以声明所有方法都是函数,但并非所有函数都是方法:
采用以下python示例:
class Door:
def open(self):
print 'hello stranger'
def knock_door:
a_door = Door()
Door.open(a_door)
knock_door()
给出的示例显示了一个名为“Door”的类,它有一个名为“open”的方法或操作,它被称为方法,因为它是在类中声明的。还有另一部分代码,下面是“def”,它定义了一个函数,它是一个函数,因为它没有在类中声明,这个函数调用我们在类中定义的方法,你可以看到,最后函数是被称为“孤独”。
正如您所看到的,您可以在任何地方调用函数,但是如果要调用方法,则必须传递与声明方法的类相同类型的新对象(Class.method(object))或者您必须调用对象内部的方法(object.Method()),至少在python中。
将方法看作只有一个实体可以做的事情,所以如果你有一个Dog类,那么只在该类中有一个bark函数是有意义的,那将是一个方法,如果你还有一个Person类,它可以有意义的是写一个函数“feed”,因为它不属于任何类,因为人和狗都可以被提供,你可以称之为函数,因为它不属于任何类。