17、Java中的面向对象的编程思想

101 阅读5分钟

Java中的面向对象的编程思想

作者:韩茹

公司:程序咖(北京)科技有限公司

程序咖:IT职业技能评测平台

网址:www.chengxuka.com

WX20210415-175630@2x

任务

1. 面向对象
2. 面向过程
3. 类和对象

一、 面向对象的设计思想

生活中的面向对象

洗衣服,吃饭
面向过程:关注点是过程 ————站在一个执行者的角度去考虑事情,做事情
	//step1.找个盆
	//step2.收集要洗的衣服
	//step3.放水,放洗衣粉。。
	//step4:洗一洗
	//step5:晒一晒

面向对象:关注点是对象 ————站在指挥者的角度
	//step1:找个对象
	//step2:让他洗衣服
	
	
生活中的面向对象:找合适的人,做合适的事儿。。
生活中的面向过程:亲力亲为,按照流程步骤来,一步一步,吭哧吭哧。。。

代码中:
	Arrays类
		sort();-->排序
		binarySearch();-->搜索
	Scanner类
		sc.nextInt();
		sc.next();
		sc.nextDouble();

1.1 什么是面向对象

一种看待问题的思维方式,着眼于找到一个具有特殊功能的具体个体,然后委托这个个体去做某件事情,我们把这个个体就叫做对象
是一种更符合人类思考习惯的思想【懒人思想】,可以将复杂的事情简单化,将程序员从执行者转换成了指挥者
使用面向对象进行开发,先要去找具有所需功能的对象来用,如果该对象不存在,那么创建一个具有所需功能的对象

1.2 面向过程

一种看待问题的思维方式,在思考问题的时候,着眼于问题是怎样一步一步解决的,然后亲力亲为的去解决问题

####1.3 面向对象和面向过程的对比

面向对象是基于万物皆对象这个哲学观点

​ 举例说明:

​ 案例一:我想要吃大盘鸡 ​ 面向过程 面向对象 ​ 1.自己去买菜 1.委托一个会砍价的人帮忙去买菜 ​ 2.自己择菜 2.委托一个临时工帮忙择菜 ​ 3.自己做菜 3.委托一个厨师帮忙做菜 ​ 4.自己开始吃 4.自己开始吃

​ 案例二:小明是一个电脑小白,想要配一台电脑,买完零件后需要运到家里,组装完成后打开电脑玩游戏 ​ 面向过程 面向对象 ​ 1.小明补充电脑知识 1.委托一个懂电脑的朋友(老王)去帮忙买零件 ​ 2.小明去买零件 2.委托一个能跑腿的人去买零件 ​ 3.小明把零件带回家里 3.委托一个快递小哥帮小明送到家里 ​ 4.小明组装电脑 4.委托一个会组装电脑的人帮小明组装电脑 ​ 5.小明开机玩电脑 5.小明自己打开电脑,开始玩游戏

面向对象:(OOP)
	不是一种语言,而是一种编程思想。
	面向对象程序设计:(Object Oriented Programming)
		Object:对象
		Oriented:方向,定向
		Programming:程序
		
面向过程:
	关注点在过程上(步骤)
	step1,step2,step3.。。。。
	总和分析,按照步骤实现即可。

面向对象:
	关注点在对象上
		万事万物皆对象。
	A:分析当前的问题域中所涉及的对象。
	B:这些对象有什么样的特征和功能。
		外部特征:静态属性
		动作行为:动态属性
	C:对象和对象之间的关系。
		继承关系,聚合关系,关联关系。。。
		
		类的堆砌。

区别总结

a.都是看待问题的一种思维方式,都能解决问题
b.面向过程着眼于所有的事情亲力亲为
c.面向对象着眼于找到一个具有特殊功能的对象,委托这个对象帮忙去做某件事情
注意:面向对象时一种思想,并不是一门编程语言

二、类和对象

面向对象的编程思想力图使对计算机语言中对事物的描述与现实世界中该事物的本来面目尽可能的一致。

类(class)和对象(object)是面向对象方法的核心概念。

  • 类是对一类事物的描述,是抽象的、概念上的定义。人

  • 对象是实际存在的该类事物的每个个体,因而也称实例(instance)。张三

oop1

2.1 类的定义

一个具有特殊功能的实体的集合【群体】,类是Java语言的最基本单位

2.2 对象的定义

在一个类中,一个具有特殊功能的实体,能够帮忙解决特定的问题,对象也被称为实例

2.3 类与对象之间的关系

a.类是对象的抽象,对象是类的具体体现
b.Java中描述事物通过类的形式体现,类是具体事物的抽象,对象即是该类事物实实在在的个体

类和对象

对象
人类Person钟南山院士,你,我,王二狗,李小花,袁隆平爷爷,马云爸爸。。
狗类幻影,忠犬八公,二哈,啸天
猫类嘟嘟,卡卡,你家的猫,姥姥家的白猫
汽车类我的黑色的长城车,58台红旗车,撞我的那台车。。
笔记本电脑类我现在用的这个电脑15寸的pro,王二狗的华硕,你媳妇的联想
手机类我的华为Mate30,你的小米mix2s,你媳妇用诺基亚n95
类:其实指的就是类别。对同一类事物的统称。对这类事物进行描述,--->创建class
	就是一个抽象的概念。
对象:
	类中的一个具体的实例,客观存在的,能用。个体。

oop2