重构——59构造函数本体上移(Pull Up Constructor Body)

简介: 构造函数本体上移(Pull Up Constructor Body):你在各个子类中拥有一些构造方法,它们的本体几乎完全一致;在超类中新建一个构造函数,并在子类构造函数中调用它

构造函数本体上移(Pull Up Constructor Body)

你在各个子类中拥有一些构造方法,它们的本体几乎完全一致;在超类中新建一个构造函数,并在子类构造函数中调用它

一、动机

子类无法继承超类的构造函数

二、做法

1、在超类中定义一个构造函数。将子类构造函数中的共同代码搬移到超类构造函数中

2、将子类构造函数中的共同代码删掉,改而调用新建的超类构造函数

3、编译,测试

目录
相关文章
|
4月前
|
自然语言处理 JavaScript 前端开发
作用域的概念及作用?作用域的分类?.js 属于哪种作用域?
作用域的概念及作用?作用域的分类?.js 属于哪种作用域?
35 0
|
9月前
|
搜索推荐 前端开发 JavaScript
title与h1的区别?position的值有哪些?如何理解原型?
1. title:可定义文档的标题,概括了网站信息,可以告诉搜索引擎或者用户这个网站的内容主题是什么。 2. h1:写在文章正文的标题部分,是展示给用户看的,更突出其视觉效果。
|
11月前
|
前端开发 JavaScript
一篇”水文“带你解剖HTML中的ID属性以及和Class属性的区别。
一篇”水文“带你解剖HTML中的ID属性以及和Class属性的区别。
|
11月前
|
JavaScript 前端开发
|
JavaScript 前端开发
js对象的创建对象模式和继承模式(上)---构建对象模式
js对象的创建对象模式和继承模式(上)---构建对象模式
110 0
|
JavaScript 前端开发
|
JavaScript
学习TypeScrip8(Class类)
使用 private 修饰符 代表定义的变量私有的只能在内部访问 不能在外部访问
75 0
学习TypeScrip8(Class类)
|
编译器
新年第一问,请解释一下extend和super泛型中list操作的区别?
新年第一问,请解释一下extend和super泛型中list操作的区别?
70 0
|
JavaScript 前端开发
学习javaScript必知必会(7)~Object类、修改this指向、继承关系
学习javaScript必知必会(7)~Object类、修改this指向、继承关系
113 0
学习javaScript必知必会(7)~Object类、修改this指向、继承关系