What's the difference between a method and a function?

前端 未结 30 3242
粉色の甜心
粉色の甜心 2020-11-21 05:08

Can someone provide a simple explanation of methods vs. functions in OOP context?

30条回答
  •  旧巷少年郎
    2020-11-21 05:27

    A function is a piece of code that is called by name. It can be passed data to operate on (i.e. the parameters) and can optionally return data (the return value). All data that is passed to a function is explicitly passed.

    A method is a piece of code that is called by a name that is associated with an object. In most respects it is identical to a function except for two key differences:

    1. A method is implicitly passed the object on which it was called.
    2. A method is able to operate on data that is contained within the class (remembering that an object is an instance of a class - the class is the definition, the object is an instance of that data).

    (this is a simplified explanation, ignoring issues of scope etc.)

提交回复
热议问题