一、 面向对象和面向过程
1. 概述
-
**什么是面向对象?:**关注现实存在的事物的各方面的信息,从对象的角度出发,根据事物的特征进行程序设计
-
面向过程,是遇到一件事时,思考
我该怎么做
,然后一步步实现的过程 -
面向对象,是遇到一件事时,思考
我该让谁来做
,然后那个“谁”就是对象,他要怎么做这件事是他自己的事,反正最后一群对象合力能把事就好就行了。 -
总结:
-
面向过程:自己该怎么做
-
面向对象:找人帮我们做
-
对象:用来描述客观事物的一个实体
-
类:具有 相同属性和方法 的一组对象的集合
-
是一个模子,用以确定对象将会拥有的特征和
-
这里的特征和行为可以称之为属性和方法
-
属性:就是对象所具有的各种静态特征,通俗理解为对象有什么特点
-
方法:就是对象具有的各种动态行为,通俗理解为对象能做什么
-
总结:
类是对象的类型、对象是类的实例化表现
2. 面向对象的一般步骤:
- 先按照名词提炼问题领域中的对象
- 对 对象 进行描述,其实就是在明确对象中应该具备的属性和行为
- 通过 new 的方式,创建该事物的具体对象(
对象实例化
) - 通过该对象调用它以后的功能
- 创建对象的内存图:
二、 类和对象的关系
1. 概述
类
,用于描述多个对象的共同特征,它是对象的模板对象
,用于描述现实中的个体,它是类的实例
比如:可以将玩具模型看作是一个类,将一个个玩具看作对象,从玩具模型和玩具之间的关系便可以看出类与对象之间的关系
2. 创建对象举例:
三、 成员变量和局部变量
1. 变量的作用域 {}:
- 一对大括号,就是一个作用域
- 同一作用域中,不能出现同名变量
2. 成员变量和局部变量的区别
-
定义的位置不同
-
定义在类中的变量是成员变量
-
定义在方法中或者{}语句里面的变量是局部变量
-
在内存中的位置不同
-
成员变量存储在
堆内存
的对象中 -
局部变量存储在
栈内存
的方法中 -
声明周期不同
-
成员变量随着对象的出现而出现在堆中,随着对象的消失而从堆中消失
<