首页 >web前端 >前端问答 >javascript中什么是类

javascript中什么是类

青灯夜游
青灯夜游原创
2021-09-16 16:47:304308浏览

在javascript中,类是一种用户定义类型,也称类类型,是一个具有相同属性和行为的群体的集合;从es6开始,可通过创建class关键字来定义一个类的模板,例“class 类名{}”。

javascript中什么是类

本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

什么是类

在面向对象编程中,类(class)是对象(object)的模板,定义了同一组对象(又称"实例")共有的属性和方法。类是一种用户定义的引用数据类型,也称类类型。

我们可以理解类是一个具有相同属性和行为的群体的集合。

JS 中的类

在ES5之前,JS中要表达一个类,要用一种叫做prototype-based的语法风格

	function 士兵(id,hp){
	    this.id = id
	    this.hp = hp
	}
	士兵.prototype = {
	    constructor:士兵()
	    walk:function(){ } ,
	    Shooting:function(){ } ,
	}

在es6中,首次引入了类的概念,通过创建class关键字来定义一个类的模板。

1、在js中实现创建一个Class

class Number{
}

2、实现Class的构造方法、实例属性和实例方法

//构造方法
class Number{
//实例属性
constructor(id,age){
//this指向当前事件
this.id=id;
this.age=age;
}
//实例方法
num(){
console.log("hh");
}
}
//实例化对象
var n1=new Number("1","2");
n1.num(1);
console.log(n1.id);
console.log(n1.age);
var n2=new Number("3","4");
n2.num(2);
console.log(n2.id);
console.log(n2.age);

效果展示:

hh
1
2
hh
3
4

3、Class的静态属性和静态方法

//构造方法
class Number{
//静态属性调用一个方法
static ppp=1;
//实例属性
constructor(id,age){
//this指向当前事件
this.id=id;
this.age=age;
console.log(Number.ppp)
}
//实例方法
num(){
console.log("hh");
}}
//实例化对象
var n1=new Number("1","2");
n1.num(1);
console.log(n1.id);
console.log(n1.age);
var n2=new Number("3","4");
n2.num(2);
console.log(n2.id);
console.log(n2.age);

效果展示:

1
hh
1
2
1
hh
3
4

4、类的继承

//父类
class Father{
//构造方法不能被继承
constructor(){
console.log("我是父亲");
this.name="father"
}
}
//子类
class Son extend Father{
//执行子类构造方法之前必须先执行父类构造方法
constructor(){
super();//执行父类构造方法
console.log("我是儿子")
}
}
var son=new Son;
console.log(son.name)

效果展示:

我是父亲
我是儿子
father

【推荐学习:javascript高级教程

以上是javascript中什么是类的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn