method 与 function的区别

我们在阅读英文资料时,可能经常会遇到method和function这两个单词,还可能经常以为两个是一样的。

这次在读python的说明文档时,这两个词出现的频率挺高,所以我就查了以下它们的区别。

method是依赖与一个对象的,function是独立与对象的。

在c中,只有function;

在c++中,既有method也有function,一个函数的称呼取决于它是否是一个类的对象,同理,python也是,php也是。

在java中,只有method,因为它是一门纯面向对象的语言。

下面是一段 python的代码:

def function(data):
        return data;
class A:
        str1 = "I'm a method in class"
        def method(self):
                return self.str1

str2 = "I'm a function"
print(function(str2))
a = A()
print(a.method())  

从上面中可以看出来两者之间的差别:

1 function是直接通过名字来调用的,它只能被传递参数来处理或者使用全局变量。

2 method 是通过与一个对象相关联的名字来调用的,它既可以被传递参数也可以,使用对象内部的数据。

  method 隐式的被传递了调用它的对象。


明白了两者之间的区别后,我们在阅读英文文献时还是有帮助的。


上面的资料来自 here

  

发布了32 篇原创文章 · 获赞 10 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/jiangxiaoma111/article/details/29612149