面向对象介绍(2020-12-28)

什么是面向对象

  1. 面向对象不是新的东西,它只是过程式代码的一种高度封装,目的在于提高代码的开发效率和可维护性。
  2. 面向对象编程 —— Object Oriented Programming,简称 OOP ,是一种编程开发思想。
    它将真实世界各种复杂的关系,抽象为一个个对象,然后由对象之间的分工与合作,完成对真实世界的模拟。
    在面向对象程序开发思想中,每一个对象都是功能中心,具有明确分工,可以完成接受信息、处理数据、发出信息等任务。
    因此,面向对象编程具有灵活、代码可复用、高度模块化等特点,容易维护和开发,比起由一系列函数或指令组成的传统的过程式编程(procedural programming),更适合多人合作的大型软件项目。
  3. 面向对象与面向过程:
  • 面向过程就是亲力亲为,事无巨细,面面俱到,步步紧跟,有条不紊
  • 面向对象就是找一个对象,指挥得结果
  • 面向对象将执行者转变成指挥者
  • 面向对象不是面向过程的替代,而是面向过程的封装
  1. 面向对象的特性
  • 封装性
  • 继承性
  • 多态性

程序中面向对象的基本体现

我们以一个例子来说明面向过程和面向对象在程序流程上的不同之处。

  1. 面向过程
	<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>面向对象介绍</title>
</head>
<body>
	<script>
		var student1={
			name:"小明",
			score:550,
		}
		printScore(student1);
		var student2={
			name:"小强",
			score:660,
		}
		printScore(student2);
		 function printScore(student){
		 	console.log("姓名:"+student.name+"\n成绩:"+student.score);
		 }
	</script>
</body>
</html>

在这里插入图片描述

  1. 面向对象
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>面向对象介绍</title>
</head>
<body>
	<script>
		var student1=new student("小明",550);
		student1.printScore();
		var student2=new student("小强",660);
		student2.printScore();
		function student(name,score){
			this.name=name;
			this.score=score;
			this.printScore=function(){
				console.log("姓名:"+this.name+"\n成绩"+this.score);
			}
		}
	</script>
</body>
</html>

在这里插入图片描述
Class 是一种抽象概念,比如我们定义Class——Student ,是指学生这个概念,而实例(Instance)则是一个个具体的 Student ,比如, 小明 和 小强 是两个具体的 Student 。

所以,面向对象的设计思想是:

  • 抽象出 Class
  • 根据 Class 创建 Instance
  • 指挥 Instance 得结果
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值