一、OOP(object oriented programming)面向对象编程
两个概念:
类:(抽象的):把所有对象,像的部分(数据和功能)抽出来进行描述。
类是对象的模版。
例如:人类(名字,年龄,吃,睡觉,学习),猫类,显示器(数据:分辨率,尺寸,面板类型 功能:显示游戏,显示图片,播放视频)
对象:(具体的):一切具体存在的物体都是某个类的对象。
对象是类的体现。
例如:范冰冰,柳岩,林志玲;多拉爱梦,加菲猫,汤姆猫。
二、设计类 :具有相同的数据和功能的个体可以定义为一类。
业务需求里的数据和功能
数据:
名字 年龄 性别
张三 20 男
熊大 25 男
刘德华 18 男
名字 大小 cpu
iphone6 4.7 a8
iphone6s plus 5.5 a9
三星s6 5.2 e7420
功能:
张三吃饭:1)拿筷子,2)把饭送到嘴里,3)吞肚子里
李四吃饭:1)拿筷子,2)把饭送到嘴里,3)吞肚子里
iphone6 打游戏
iphone6s plus 打游戏
三星s6 放音乐
三星s6 打游戏
三、面向对象编程
简单理解:把不同的功能(方法)和数据(变量)分配到不同的类中,通过对象来体现数据和功能。
四、解决复杂业务问题-》面向过程与面向对象
1)复杂问题分解小问题-》面向对象
2)处理小问题-》面向过程
面向对象:关注的是宏观,整体的东西。
定义类有那些属性,那些方法。我们的属性的值,方法的内容我们可以不管,而是关注的是这个类的对象到底有那些属性,那些方法。
例如:定义人类,考虑有那些属性(身高,体重,名字。。。)
有那些方法(吃饭,睡觉,学习。。。)
面向过程:关注的是微观,细节的东西。
一个方法就是一个过程,编写方法的时候,需要考虑这个方法 的功能的实现的各个步骤(a干什么,b干什么,c干什么)。
例如:吃饭(a拿筷子,b把食物送入嘴里,c吃掉食物)
二者不是孤立的
从整体以面向对象把握全局,细节以面向过程解决问题。
面向对象好处:更加贴近生活,容易理解,生活中看到的物体都是对象。并且都是属于某一类的。
2、为什么不是面向类编程?
因为是需要解决具体的实际问题(生活中一个类型有是多个对象,如学生是类,具体的学生是对象,对象有多个)
四、联系:类与类之间的关系。
1、依赖
(偶然性、局部变量、形参)public viod method(B b){};
2、关联 (长期持有,属性)
a) 聚合:(整体与部分,不具有生命周期的一致性、属性)private B b;(比如:电脑的键盘,鼠标)
b) 组合:(整体与整体,具有生命周期一致性、属性)private final B b=new B();(比如人的大脑,心脏)
3、继承
4、实现
一、OOP(object oriented programming)面向对象编程
两个概念:
类:(抽象的):把所有对象,像的部分(数据和功能)抽出来进行描述。
类是对象的模版。
例如:人类(名字,年龄,吃,睡觉,学习),猫类,显示器(数据:分辨率,尺寸,面板类型 功能:显示游戏,显示图片,播放视频)
对象:(具体的):一切具体存在的物体都是某个类的对象。
对象是类的体现。
例如:范冰冰,柳岩,林志玲;多拉爱梦,加菲猫,汤姆猫。
二、设计类 :具有相同的数据和功能的个体可以定义为一类。
业务需求里的数据和功能
数据:
名字 年龄 性别
张三 20 男
熊大 25 男
刘德华 18 男
名字 大小 cpu
iphone6 4.7 a8
iphone6s plus 5.5 a9
三星s6 5.2 e7420
功能:
张三吃饭:1)拿筷子,2)把饭送到嘴里,3)吞肚子里
李四吃饭:1)拿筷子,2)把饭送到嘴里,3)吞肚子里
iphone6 打游戏
iphone6s plus 打游戏
三星s6 放音乐
三星s6 打游戏
三、面向对象编程
简单理解:把不同的功能(方法)和数据(变量)分配到不同的类中,通过对象来体现数据和功能。
四、解决复杂业务问题-》面向过程与面向对象
1)复杂问题分解小问题-》面向对象
2)处理小问题-》面向过程
面向对象:关注的是宏观,整体的东西。
定义类有那些属性,那些方法。我们的属性的值,方法的内容我们可以不管,而是关注的是这个类的对象到底有那些属性,那些方法。
例如:定义人类,考虑有那些属性(身高,体重,名字。。。)
有那些方法(吃饭,睡觉,学习。。。)
面向过程:关注的是微观,细节的东西。
一个方法就是一个过程,编写方法的时候,需要考虑这个方法 的功能的实现的各个步骤(a干什么,b干什么,c干什么)。
例如:吃饭(a拿筷子,b把食物送入嘴里,c吃掉食物)
二者不是孤立的
从整体以面向对象把握全局,细节以面向过程解决问题。
面向对象好处:更加贴近生活,容易理解,生活中看到的物体都是对象。并且都是属于某一类的。
2、为什么不是面向类编程?
因为是需要解决具体的实际问题(生活中一个类型有是多个对象,如学生是类,具体的学生是对象,对象有多个)
四、联系:类与类之间的关系。
1、依赖
(偶然性、局部变量、形参)public viod method(B b){};
2、关联 (长期持有,属性)
a) 聚合:(整体与部分,不具有生命周期的一致性、属性)private B b;(比如:电脑的键盘,鼠标)
b) 组合:(整体与整体,具有生命周期一致性、属性)private final B b=new B();(比如人的大脑,心脏)
3、继承
4、实现