这些定义同样适用于程序编程和oop一样多吗?感谢。
答案 0 :(得分:8)
功能是将指令组合在一起以实现某些结果。它可能需要参数并返回结果。如果函数没有返回结果,则通常称为过程。例子:
function drawLine(x1, y1, x2, y2):
// draws a line using Bresenham's algorithm from x1,y1 to x2,y2.
// doesn't return anything
function <number> add(a, b):
// adds a to b and returns the result as a number
return a + b
所以功能是做一些特别的工作。例如,当你需要绘制一条3行的多边形作为矢量图像的一部分时,调用drawLine
三次比将所有例程用于线内绘制更方便。
方法(“成员函数”)类似于函数,它们属于类或对象,通常表示对象/类的动词。例如,Window
类型的对象通常会有方法open
和close
,它们对它们所属的对象执行相应的操作。
属性与日常语言一样,技术上是具有专用getter / setter例程的对象/类的字段(可以视为方法。有些语言没有属性和这种行为使用私有字段+ get / set方法实现。)。
答案 1 :(得分:7)
随着时间的推移,人们使用这些术语的方式已经发生了变化(并且可能会不断变化),但如果您正在阅读过去十年左右的文章,那么这就是他们的意思:
函数(又名子程序)是相对独立的,相对独立的代码片段,构成了一个更大的程序。
方法是附加到面向对象编程中特定类(或实例)的函数。
属性是面向对象的习惯用语。该术语描述了一个或两个函数(取决于所需的程序行为) - 一个检索值的'getter'和一个设置值的'setter'。按照惯例,属性通常没有很多副作用。 (并且它们所具有的副作用通常具有有限的范围:它们可以验证正在设置的项目,通知侦听器更改,或者将对象的私有数据转换为公开声明的类型。)
答案 2 :(得分:1)
功能是一个独立的结构,如trim()
,strlen()
,fopen()
等。
function myAbcFunction() { ... }
Method是对象的函数。它在课堂上定义。属性只是对象的属性:
class MyClass {
public $property; // Public property: $objInstance->property
protected $property2; // Protected property
public function doSth() {
// That's a method. $objInstance->doSth();
}
}
我建议您阅读手册Classes and Objects章节。
答案 3 :(得分:1)
Field - 字段是直接在类或结构中声明的任何类型的变量。字段是其包含类型的成员。
Property - 属性是一个成员,它提供了一种灵活的机制来读取,写入或计算私有字段的值。
Method - 方法是包含一系列语句的代码块。在C#中,每个执行的指令都是在方法的上下文中完成的。
过程 - 过程是包含一系列语句的代码块。
功能 - 函数是包含一系列语句的代码块。返回操作结果。
答案 4 :(得分:0)
在OOP中,主要结构是一个对象。
Method是一个可以应用于对象的命名操作。 属性是对象具有的命名值。例如,对象Human具有属性“Age”。 函数是一种比一种方法更通用的东西。它只是一个不属于任何对象的动作。但是方法是属于对象的函数。
答案 5 :(得分:0)
a)函数 指执行特定任务并返回值的语句块。
B)步骤 指程序的构造块,在调用时不返回值。
c)方法 指对象可以执行的操作。