js中的原型继承

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>原型继承</title>
</head>
<body>
	<script>
	/*
	*	
	*	
	*面向对象编程思想:根据需求,分析对象,找到对象有什么特征和行为,通过代码的方式来实现需求,要想实现这个需求就要创建对象,要想创建对象,就应该先有构造函数,然后通过构造函数来创建对象,通过对象调用属性个方法来实现相应的功能及需求;	
	*js不是面向对象的语言,是爷们就与对象的语言,为什么要学习js还要学习面向对象,因为面向对象的思想适合于人的想法,编程起来会更加的方便,及以后的维护....
	*面向对象的编程语言中有类(class)的概念(一种特殊的数据类型),但是JS不是面向对象的语言,所以JS中没有类(class),但是JS可以模拟面向对象的思想编程,JS中会通过构造函数来模拟类的概念。
	*
	*
	*
	*面向对象的特征:封装,继承,多态
	*封装:就是包装
	*一个值存储在一个变量中--封装
	*一些重复的代码放在一个函数中--封装
	*一系列的属性放在一个对象中---封装
	*一些功能类似的函数(方法)放在一个对象中--封装
	*好多相类似的对象放在一个js文件中---封装
	*
	*继承:首先继承是一种关系,类与类之间的关系,JS中没有类,戴氏可以通过构造函数来模拟类,虽然后通过原型来实现继承
	*继承也是为了数据共享,js重的继承也是为了实现数据共享
	*
	*原型作用之一:数据共享,节省内存空间
	*原型作用之二:为了实现继承
	*
	*继承是一种关系:
	*父类级别与子类级别的关系
	*
	*
	*
	*
	*多态:一个对象有不同的行为,或者是同一个行为针对不同的对象,产生不同的结果,要想有多态,就要先有继承,JS中可以模拟多态但不会去使用,也不会模拟;
	*
	*
	*	
	*/	
//js中通过原型来继承
function Person(name,age,sex){
   this.name = name;
   this.sex = sex;
   this.age = age;
}

Person.prototype.eat = function(){
	console.log("人吃熟食");
}
Person.prototype.sleep = function(){
	console.log("青少年要早睡觉");
}
Person.prototype.play = function(){
	console.log("生活不可少乐趣");
}
function Student(score){
    this.score = score;
}
Student.prototype = new Person("小明",10,"男");
Student.prototype.study = function(){
	console.log("好好学习,天天向上")	
}
var stu = new Student(99);
console.log(stu.name);
console.log(stu.sex);
console.log(stu.age);
stu.eat();
stu.sleep();
stu.play();
console.log(stu.score);
stu.study();

</script>	
</body>
</html>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值