构造函数也是js的重难点,所以必须要把这部分了解清楚,下面我总结一下构造函数的特点和方法
构造函数的方法名必须与类名相同。
构造方法是一种特殊的方法,具有以下特点。
(1)构造方法的方法名必须与类名相同。
(2)构造方法没有返回类型,也不能定义为void,在方法名前面不声明方法类型。
(3)构造方法的主要作用是完成对象的初始化工作,它能够把定义对象时的参数传给对象的域。
(4)构造方法不能由编程人员调用,而要系统调用。
(5)一个类可以定义多个构造方法,如果在定义类时没有定义构造方法,则编译系统会自动插入一个无参数的默认构造器,这个构造器不执行任何代码。(6)构造方法可以重载,以参数的个数,类型,或排列顺序区分
/*function Person(name, sex){
this.name = name;
this.sex = sex;
}
//添加函数
Person.prototype.showName = function(){
alert(this.name);
}
Person.prototype.showSex = function(){
alert(this.sex);
}
//继承、多态
function Worker(name, sex, job){
//继承父一级的属性
//构造函数的伪装
Person.call(this, name, sex);
//添加一个自定义属性
this.job = job;
}
//继承函数
//原型链
for(var func in Person.prototype){
Worker.prototype[func] = Person.prototype[func];
}
Worker.prototype.showJob = function(){
alert(this.job);
}
*/
/var w1 = new Worker(“小明”, ‘男’, “演员”);
w1.showName();
w1.showSex();
w1.showJob();/
class Person{
//声明属性 构造器
constructor(name, sex){
this.name = name;
this.sex = sex;
}
showName(){
alert(this.name)
}
showSex(){
alert(this.sex);
}
}
//继承:extends
class Worker extends Person{
constructor(name, sex, job){
super(name, sex);
this.job = job;
}
showJob(){
alert(this.job);
}
}
var p1 = new Person(“blue”, ‘女’);
p1.showName();
p1.showSex();
var w1 = new Worker(“小明”, ‘男’, ‘演员’);
w1.showName();
w1.showJob();
构造函数的方法,你们都知道么?
最新推荐文章于 2024-09-17 12:41:46 发布