方法 (计算机科学)

✍ dations ◷ 2025-12-11 03:42:54 #计算机编程

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

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

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

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

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

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

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

相关

  • 欧托-曼格语系欧托-曼格语系(Oto-Manguean languages、Otomanguean)是一个包含多个美洲原住民语言的大语系。现在只有墨西哥的原住民仍然在使用着。但是在过去,欧托-曼格语系的Manguean最南
  • 斯基恩氏腺斯基恩氏腺(Skene's glands,日语:スキーン腺),或译史氏腺、小前庭腺、傍尿道腺。是在阴道前壁、尿道口下端附近有左右各一个开口的腺体。与男性的前列腺在解剖学上同源,有时又被称
  • 头疼头痛,又叫头疼(英语:headache),是一种在头部、颈部或肩膊以上位置发生的局部疼痛。许多头部和颈部问题的症状都是头痛。头痛表现种类繁多,可能是偏头痛、紧缩型头痛(英语:tension-ty
  • 葡萄酒酿制葡萄酒酿制为生产葡萄酒的过程,包含从最初选择葡萄种类或者其他农产品作为酿酒原料,一直到最终将酿出的酒装瓶为止。虽然大多数葡萄酒都是由葡萄酿造而成,但也可以使用其他水果
  • 胡斯扬·胡斯(约翰·胡斯,捷克语:Jan Hus;1371年捷克胡西内兹 - 1415年7月6日德国康斯坦茨),也译作胡司,捷克基督教思想家、哲学家、改革家,曾任布拉格查理大学校长。胡斯思想上受到威克
  • 提普苏丹蒂普苏丹(Tipu Sultan,1750年11月20日-1799年5月4日),一译提普苏丹,本名Sultan Fateh Ali Tippu,南印度迈索尔王国苏丹海达尔·阿里(英语:Hyder Ali)之子。其父阿里去世后成为迈索尔苏
  • β-变形菌详见细菌分类表β-变形菌网(学名:Betaproteobacteria)是变形菌门中的一纲,与γ-变形菌关系最近。医学导航:病菌细菌(分类)gr+f/gr+a(t)/gr-p(c/gr-o药物(J1p、w、n、m、疫苗)
  • 巴黎伯爵亨利六世申博尔恩-布海姆伯爵夫人伊莎贝尔 巴黎伯爵亨利 林堡-施蒂鲁姆伯爵夫人海伦 弗朗索瓦奥尔良的亨利,巴黎伯爵(1908年7月5日-1999年6月19日),全名亨利·罗伯特·斐迪南·马里·路易
  • 固相反应固相反应是指有固相参与的化学反应,但狭义上指固体与固体间发生化学反应生成固体产物的过程。固相反应的特点是没有化学平衡。由于固相反应是固体与固体之间在界面上进行的反
  • 存货单位存货单位(英语:stock keeping unit,SKU/ˌɛsˌkeɪˈjuː/),也翻译为库存单元,是一个会计学名词,定义为库存管理中的最小可用单元,例如纺织品中一个SKU通常表示规格、颜色、款式,而