方法 (计算机科学)

✍ dations ◷ 2025-07-08 16:12:36 #计算机编程

在面向对象编程中,方法(英语: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‘ 撰写的静态成员以及其客户端的例子:

相关

  • 先天性肺部呼吸道畸形先天性肺部呼吸道畸形(congenital pulmonary airway malformation,CPAM),旧称先天性囊肿性腺瘤样畸形(congenital cystic adenomatoid malformation ,CCAM)是一种和游离肺(英语:bronc
  • 长者智人长者智人(Homo sapiens idaltu),生活在160,000年前的非洲,头骨所在的形态上介于现代人和早期智人之间。他们已经具有了相当多的现代人特征,例如成年人头骨有着大的球形颅骨、扁平
  • 氟利昂氟利昂(英语:Freon、/ˈfriː.ɒn/、FREE-on,亦称氯氟烃、氟氯烷)是由科慕公司(英语:Chemours)生产之数种卤碳(英语:Halocarbon)产品的注册商标。这些物质通常是稳定、不可燃、中度毒
  • 格利泽667Cc格利泽667(英语:Gliese 667,又称HR 6426或MLO 4)是天蝎座的一个三恒星系统,离地球大约6.97秒差距(22.7光年)。除了三个相互有引力约束的恒星系统外,它还包括第四个光学密近成员(视星
  • 仓成正仓成正(1918年8月31日-1996年7月3日),日本政治人物,自民党籍众议员。曾担任第3次中曾根内阁的外务大臣。第一次田中角荣内阁(模板)第一次改造内阁 - 第二次改造内阁(1972年12月22日
  • 的卢马的卢,又作的颅,古代一种白额马,亦称为馰、馰颅或馰颡,又称戴星马及的颡。三国时代刘备所乘的名马的卢又名榆雁,相传是匹凶马。余嘉锡《世说新语笺疏》引伯乐《相马经》提到:“马白
  • 修正主义修正主义可以指:
  • 凯撒 (头衔)凯撒源自于拉丁语:Cæsar,是罗马帝国皇帝的头衔之一。从罗马共和政体转型为帝国的过程中,在身为独裁官的盖乌斯·尤利乌斯·凯撒(前102年-前44年)死亡之后,几位古罗马掌握实权的领
  • 李宝霖李宝霖(1947年-2011年12月20日),马来西亚第12届雪兰莪武吉加星州议员。2011年12月20日,因大肠癌病逝。
  • 感谢上帝《感谢上帝》(法语:,英语:)是一部2019年法国和比利时合拍宗教传记惊悚剧情片,由法兰索瓦·欧容执导。它在第69届柏林影展上获得了评审团大奖银熊奖。电影的主体拍摄在法国的巴黎以