面向对象概述
2015-08-01 14:33
239 查看
面向对象概述
1、面向对象思想
A、什么是面向对象(3点)
1、面向过程是以函数为基础,完成各种操作,强调的是过程
2、面向对象以对象为基础,完成各种操作,强调的是对象,结果
3、面向对象是基于面向过程的
B、面向对象的思想特点
1、是一种更符合人们思考习惯的思想
2、把复杂的事情简单化
3、把我们从执行者变成了指挥者
2、类与对象的关系
3.面向对象三大特性
1.(封装)封装是面向对象编程的核心思想,将对象的属性和行为封装起来,而将对象的属性和行为封装起来的载体就是类,类通常对客户隐藏其实现细节,这就是封装的思想。例如,用户使用电脑,只需要使用手指敲击键盘就可以实现一些功能,用户无须知道电脑内部是如何工作的,即使用户可能碰巧知道电脑的工作原理,但在使用电脑时并不完全依赖于电脑工作原理这些细节
2.(继承)类与类之间同样具有关系,
c1b6
如一个百货公司类与销售员类相联系,类之间这种关系被称为关联。关联是描述两个类之间的一般二元关系,例如一个百货公司类与销售员类就是一个关联,再比如学生类以及教师类也是一个关联。两个类之间的关系有很多种,继承是关联中的一种
3.(多态)多态性允许以统一的风格编写程序,以处理种类繁多的已存在的类以及相关类。该统一风格可以由父类来实现,根据父类统一风格的处理,就可以实例化子类的对象。由于整个事件的处理都只依赖于父类的方法,所以日后只要维护和调整父类的方法即可,这样降低了维护的难度,节省了时间。在提到多态的同时,不得不提到抽象类和接口,因为多态的实现并不依赖具体类,而是依赖于抽象类和接口
4、如何使用定义好的类
1、定义格式
类名 对象名 = new 类名()
2、使用格式
1、成员变量的使用
调用:对象名.变量名
赋值:对象名.变量名 = 值;
2、成员方法的使用
调用:对象名.方法名(实际参数);
5、成员变量和局部变量的区别
1、定义位置
成员变量:在类中方法外
局部变量,在类中方法中,或者方法上的形式参数
2、初始化的区别
成员变量:有默认的初始化值
局部变量:无
3、存储位置
成员变量:堆 随着对象的存在而存在
局部变量:栈 随着方法的存在而存在
6、匿名对象
1、概念
没有名字的对象
2、使用场景
A 对象中的方法只调用一次的情况下使用(一般不用,测试时使用)new
Student().sayHello();
B 匿名对象作为实际参数传递
1、面向对象思想
A、什么是面向对象(3点)
1、面向过程是以函数为基础,完成各种操作,强调的是过程
2、面向对象以对象为基础,完成各种操作,强调的是对象,结果
3、面向对象是基于面向过程的
B、面向对象的思想特点
1、是一种更符合人们思考习惯的思想
2、把复杂的事情简单化
3、把我们从执行者变成了指挥者
2、类与对象的关系
[align=center]把事物转换成类[/align] | ||
[align=center]事物[/align] | [align=center]-->[/align] | [align=center]类[/align] |
[align=center]属性 ( 特征)[/align] | [align=center]-->[/align] | [align=center]成员变量 ( 定义在类中,方法外 )[/align] |
[align=center]行为 ( 功能)[/align] | [align=center]-->[/align] | [align=center]成员方法 ( 和以前的区别是去掉 static)[/align] |
[align=center]类与对象的关系[/align] | |
[align=justify]类[/align] | [align=justify]是相关的属性和行为的集合,集合就是一堆东西,是一个抽象的概念[/align] |
[align=justify]对象[/align] | [align=justify]是某种事物的具体的存在,具体的表现形式[/align] |
[align=justify]举例[/align] | 学生 : 类 [align=justify]对象 : 小明[/align] |
1.(封装)封装是面向对象编程的核心思想,将对象的属性和行为封装起来,而将对象的属性和行为封装起来的载体就是类,类通常对客户隐藏其实现细节,这就是封装的思想。例如,用户使用电脑,只需要使用手指敲击键盘就可以实现一些功能,用户无须知道电脑内部是如何工作的,即使用户可能碰巧知道电脑的工作原理,但在使用电脑时并不完全依赖于电脑工作原理这些细节
2.(继承)类与类之间同样具有关系,
c1b6
如一个百货公司类与销售员类相联系,类之间这种关系被称为关联。关联是描述两个类之间的一般二元关系,例如一个百货公司类与销售员类就是一个关联,再比如学生类以及教师类也是一个关联。两个类之间的关系有很多种,继承是关联中的一种
3.(多态)多态性允许以统一的风格编写程序,以处理种类繁多的已存在的类以及相关类。该统一风格可以由父类来实现,根据父类统一风格的处理,就可以实例化子类的对象。由于整个事件的处理都只依赖于父类的方法,所以日后只要维护和调整父类的方法即可,这样降低了维护的难度,节省了时间。在提到多态的同时,不得不提到抽象类和接口,因为多态的实现并不依赖具体类,而是依赖于抽象类和接口
4、如何使用定义好的类
1、定义格式
类名 对象名 = new 类名()
2、使用格式
1、成员变量的使用
调用:对象名.变量名
赋值:对象名.变量名 = 值;
2、成员方法的使用
调用:对象名.方法名(实际参数);
5、成员变量和局部变量的区别
1、定义位置
成员变量:在类中方法外
局部变量,在类中方法中,或者方法上的形式参数
2、初始化的区别
成员变量:有默认的初始化值
局部变量:无
3、存储位置
成员变量:堆 随着对象的存在而存在
局部变量:栈 随着方法的存在而存在
6、匿名对象
1、概念
没有名字的对象
2、使用场景
A 对象中的方法只调用一次的情况下使用(一般不用,测试时使用)new
Student().sayHello();
B 匿名对象作为实际参数传递
相关文章推荐
- 对LessonFour的再一遍
- ZOJ 3299 Fall the Brick(线段树区间更新)
- 正则表达式
- 二叉树的基本操作
- ubuntu 常用命令大全
- Android中BitmapFactory.Options详解
- Selenium2学习-023-WebUI自动化实战实例-021-获取浏览器显示区域大小,通过 WebDriver 截图功能
- UVa 232 Crossword Answers
- leetcode--Lowest Common Ancestor of a Binary Tree
- 链路层 - SLIP,PPP,
- 链路层 - SLIP,PPP,
- 欢迎使用CSDN-markdown编辑器
- 机试算法讲解: 第39题 DAG之QQ师徒关系
- Linux下Socket编程
- 士兵杀敌(一)
- HDU 5338 ZZX and Permutations 线段树
- 黑马程序员——多线程知识总结1
- 机试算法讲解: 第38题 求Dijkstra最短路径及花费
- inDensity,inTargetDensity,inScreenDensity关系详解
- JavaScript中的枚举类型