继承 (计算机科学)

✍ dations ◷ 2025-07-20 04:48:45 #类 (计算机科学)

继承(英语:inheritance)是面向对象软件技术当中的一个概念。如果一个类别B“继承自”另一个类别A,就把这个B称为“A的子类”,而把A称为“B的父类别”也可以称“A是B的超类”。继承可以使得子类具有父类别的各种属性和方法,而不需要再次编写相同的代码。在令子类别继承父类别的同时,可以重新定义某些属性,并重写某些方法,即覆盖父类别的原有属性和方法,使其获得与父类别不同的功能。另外,为子类追加新的属性和方法也是常见的做法。一般静态的面向对象编程语言,继承属于静态的,意即在子类的行为在编译期就已经决定,无法在运行期扩展。

有些编程语言支持多重继承,即一个子类可以同时有多个父类别,比如C++编程语言;而在有些编程语言中,一个子类只能继承自一个父类别,比如Java编程语言,这时可以透过实现接口来实现与多重继承相似的效果。

现今面向对象程序设计技巧中,继承并非以继承类别的“行为”为主,而是继承类别的“类型”,使得组件的类型一致。另外在设计模式中提到一个守则,“多用合成,少用继承”,此守则也是用来处理继承无法在运行期动态扩展行为的遗憾。

相关

  • 意大利– æ¬§æ´²ï¼ˆæµ…ç»¿è‰²åŠæ·±ç°è‰²ï¼‰â€“ æ¬§ç›Ÿï¼ˆæµ…绿色)  —æ„大利共和å
  • DNA修复DNA修复是细胞中经常运行的一种进程。它使基因组免受损伤和突变,因此对细胞的生存是很重要的。在人的细胞中,一般的代谢活动和环境因素(如紫外线和放射线)都能造成DNA损伤,导致每
  • 皮埃蒙特语皮埃蒙特语(nome nativo Piemontèis, codice ISO 639-3 pms) ,在1981年底被欧盟认定为受法律保护的欧洲少数人语言之一(欧盟第4745号决议),经联合国教科文组织UNESCO(Red book
  • 二氢尿苷二氢尿苷(英语:Dihydrouridine,或称为5,6-二氢尿嘧啶核苷,缩写D、DHU、UH2)是一种嘧啶类核苷,由核碱基5,6-二氢尿嘧啶与核糖通过C-N糖苷键连结而成,比常见的尿苷多了两个氢原子,使其
  • 络丝蛋白2ddu, 2e26· serine-type peptidase activity · metal ion binding · lipoprotein particle receptor binding· extracellular space · cytoplasm· neuron migrati
  • 岸(又称滨),分为海岸、湖岸及河岸,是在水面和陆地接触处,经波浪、潮汐、海流等作用下形成的滨水地带,其中有众多沉积物堆积而形成的岸称为滩。可分为岩岸与沙岸。沙岸海岸线平直而
  • 圣塞巴斯蒂昂圣巴斯弟盎(英语:St. Sebastian;256年?-288年)是一位殉道圣人。据说在罗马皇帝戴克里先迫害基督徒期间被杀。在艺术和文学作品中,他常被描绘成双臂被捆绑在树桩,被乱箭所射。这是最
  • 蚁科参见亚科列表(英语:List of ant subfamilies)蚂蚁,古代又称马蚁或馬螘,蚂蚁是一种真社会性的昆虫,属于膜翅目 (Hymenoptera) 蚁科(Formicidae),膜翅目的其他昆虫有胡蜂、黄蜂等。最
  • 注意力缺陷多动障碍的诊断注意力不足过动症的诊断是根据患者的行为和心理发展的评鉴并且排除毒品、药物的影响、或其他生理或心理的可能造成类似ADHD症状的因素而成。诊断过程通常会将个案的父母意见
  • 羊亚科羊亚科(学名:Caprinae),是牛科下的一个亚科。因为这个亚科内的动物之间的亲属关系还不很清楚,为了显示这个不清楚性,在生物分类学上亚科以下又分族。高鼻羚羊族和斑羚属俗称羚羊。