For faster navigation, this Iframe is preloading the Wikiwand page for 方法 (电脑科学).

方法 (电脑科学)

面向对象编程中,方法(英语:Method;德语:Methode; 法语:Méthode)指的是类别(所谓的类方法静态方法工厂方法)、或者是物件(所谓的实例方法)两者其中之一的一种子程序。如同过程化编程语言的程序,一个方法通常以一系列的语句所组成,并以之完成一个动作。其可以借由输入一组参数以制订所需的动作,且一部分的方法可能会有输出值(所谓的返回值)。方法的目的是提供一个机制,以存取(对于读和写)物件或类别的私有资料存储区。

方法的种类

如前所述,实例方法附属于特定物件,而类别或者静态方法(又称作共享方法)则附属于某个类别。在典型的实践中,实例方法发送一个隐藏的参考(举例来说,this或者self或者Me)给所属的物件(不论类别或类实例),所以它们可以存取与之相关的资料。一个类方法的典型例子即:在给定的类别中,其内部记录着已建立物件的计数。

构造函数类似于方法,不过它们是在语句区块中建立一个类别的实例时,所自动调用的。在JavaC++C#以及PHP里,它们和所属物件的类别,皆有相同的名称。在Visual Basic里,构造函数称为New,而且在Object Pascal里,构造函数可以有用户所定义的名字(不过大多称作Create)。构造函数有一部分很像方法,不过也存在着许多差异,所以通常不把其视为方法。

析构函数是一个特殊的实例方法,它是在析构一个类别的实例时,所自动调用的。在C++里,它们和所属物件的类别,皆有相同的名称,只不过在前面多了一个波浪号(~)。在Object Pascal里,析构函数可以有用户所定义的名字(不过大多称作Destroy)。

抽象方法是一个虚设代码的方法,它没有实现。它通常用来占住一个位置,让子类或者以此为原型的物件重载,并实现出相应的抽象方法。如此一来,抽象方法有助于明确表明一部分架构

存取方法通常是一个小型、简单的,并提供一个用来从程序的其它部分存取物件状态的方法。虽然它引入了一个新的附属,但这是直接存取状态资料的首选方法,因其提供了一个抽象层。例如,如果银行账户类别提供了getBalance()的存取方法,其用以查询余额(而不是直接存取余额资料区域),之后该部分代码的修改版可以实现更复杂的查询余额机制(例如,获取数据库),而无须改变相关的代码。一个用来改变物件状态的存取方法,通常称作更新方法,有时又称作更动方法。提供这些方法的物件就被认为是可变物件。

静态(共享/类别)方法

如前所述,方法可能宣告为静态的(在Visual Basic里是shared,在Object Pascal里是class),即静态方法活动于类别层次,而非物理层次。静态方法不能触及一个特定的类实例(也就是不能触及thisself,Me等等)以下是以C‘ 撰写的静态成员以及其客户端的例子:

 public class Example
   public static void StaticExample
      // 靜態方法的程式碼
   public void InstanceExample
    M// 此處為實體方法的程式碼
   M// 可以使用THIS
 /// 上述類別的客戶端:
 // 呼叫靜態方法(不包含實體)
 ExampleClass.StaticExample
 // 呼叫實體方法
 ExampleClass objMyExample = ExampleClass
 objMyExample.InstanceExample

参考条目

参阅

{{bottomLinkPreText}} {{bottomLinkText}}
方法 (电脑科学)
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?