1.1:面向对象简介
定义:面向对象(Object Oriented,OO)是软件开过过程中使用一种思维方式 。
- 面向过程:强调功能行为,关注完成的过程
- 面向对象:将功能封装进对象,强调具备了功能的对象,不关注过程
- 面向对象与面向过程都是一种思想
- 面向对象是基于面向过程的
- OOP(Object Oriented Programming):面向对象编程
特点:
- 是一种更符合人们思考习惯的思想。
- 可以将复杂的事情简单化。
- 将程序由执行者转换成了指挥者。
面向对象完成需求:
- 明确开发功能需求。
- 查找具有该功能的类。
- 如果不存在满足功能的类,则定义这样的类。
- 创建该类对象,使用对象完成功能。
面向对象三大特征:
- 封装(encapsulation)
- 继承(inheritance)
- 多态(polymorphism)
1.1(1):类与对象
定义:具有相同特征(属性)和行为(功能)的一类事物的抽象。
- 如:人类有身高,体重等属性,有说话,打球等行为。
- 如:动物类有年龄,性别等属性,有吃饭,睡觉等行为。
类在Java中代码的体现形式:
- 使用class(类)来抽象(模拟)一个现实生活中的事物
- 定义成员变量对应事物的属性
- 定义成员函数对应事物的功能
- 在Java开发的过程中,定义类就是定义类中成员变量与成员属性,完成这个类功能的过程。
- 定义格式:
class 类名
{
数据类型 成员变量名;
成员函数{}
}
1.1(2):类与对象的关系
对象:类的实体
- 如:人类是类的定义,避尘大王,避暑大王是人类的实体对象。
- 如:水果类是类的定义,苹果橘子是水果类的实体对象。
类与对象的关系:
- 类是抽象概念,对象是类的具体实例。
- 一个类可以有多个对象。一个对象只属于一个类。
对象创建格式:
- 数据类型 变量名(对象名) = new 数据类型(参数);
对象的使用:
- 成员变量的访问:对象名.属性名
- 成员函数的调用:对象名.函数名(参数)
1.1(3):对象内存图
内存位置:
对象由new关键字创建,实体存在于堆内存中
任何数据均可以定义成类,创建对象,属于引用类型。
1.2:成员变量与局部变量
成员变量
- 定义位置:类中,整个类中均可以访问。
- 内存:成员变量随着对象的建立而建立,存在于对象所在的堆内存中。
- 默认值:成员变量有默认值。
- 回收:随着对象的回收而回收。
局部变量
- 定义位置:定义域局部范围,如函数内,语句内等。
- 内存:局部变量存在于栈内存中。
- 默认值:没有默认值。
- 回收:随着作用域结束而回收,通常为语句或函数范围。
变量访问原则:就近原则
1.3:匿名对象
匿名对象是对象的简化形式,即没有名字直接创建的对象。
匿名对象的使用:
- 对象方法只调用一次时。
- 作为实际参数传递时。
- 作为返回值返回时。
(以上:就是面向对象,接下来我们讲封装)