目录
1 设计对象并使用
1.1 设计类,创建对象并使用
类:是对象共同特征的描述
对象:是真实存在的具体实例
如何设计类



1.2 定义类的几个补充注意事项
- 类名首字母建议大写,满足“驼峰模式”,不能用关键字,必须是合法标识符,且有意义
- 一个Java文件中可以定义多个class,但只能有一个类是public修饰,而且public修饰的类名必须成为代码文件名。实际开发建议一个代码文件只定义一个class类
- 成员变量的完整定义格式是:修饰符 数据类型 变量名称 = 初始化值; 一般无需指定初始化值,存在默认值


2 对象内存图
2.1 多个对象的内存图


- 对象放在堆内存中
- 变量名中存储的是对象在堆内存中的地址
- 成员变量的数据存储在对象中,堆内存里
2.2 两个变量指向同一个对象内存图


垃圾回收
- 当堆内存中的对象,没有任何变量引用(指向)时,就会判定为内存中的“垃圾”
- Java存在自动垃圾回收器,会定期自动清理
3 面向对象案例:购物车
3.1 需求分析、架构搭建

3.2 添加商品到购物车、查看购物车信息

3.3 修改购买数量

3.4 结算金额

4 构造器
4.1 学习构造器的目的
- 真正知道对象具体是通过调用什么代码得到的
- 能够掌握为对象赋值的其他简便写法
- 为以后学习面向对象编程的其他内容做支撑
4.2 构造器的作用、格式
4.3 构造器的分类和作用
- 无参数构造器(默认存在的):初始化对象时,成员变量的数据均采用默认值
- 有参数构造器:在初始化对象时,同时可以接受参数为对象进行赋值
4.4 构造器的注意事项
- 任何类定义出来,默认就自带了无参数构造器,写不写都有
- 一旦定义了有参数构造器,无参数构造器就没有了;如果还想用无参数构造器,此时需要自己手写一个
5 this关键字
5.1 this关键字是什么
- 可以出现在构造器、方法中
- 代表当前对象的地址
5.2 this关键字的作用
- 可以用于指定访问当前对象的成员变量、成员方法
5.3 this出现在有参构造器中的用法

5.4 this出现在成员方法中的用法

6 封装
6.1 封装思想概述
- 面向对象的三大特征:封装,继承,多态
- 封装:告诉我们如何正确设计对象的属性和方法
- 封装的原则:对象代表什么,就得封装对应的数据,并提供数据对应的行为

6.2 如何进行更好的封装
- 一般建议对成员变量使用private关键字进行修饰(private修饰的成员只能在当前类中访问)
- 为每个成员变量提供配套public修饰的getter、setter暴露其取值和赋值
7 标准 JavaBean
7.1 JavaBean
- 也可以称为实体类,其对象可以用于在程序中封装数据
7.2 标准 JavaBean 须满足如下书写要求:
- 成员变量使用 private 修饰
- 提供成员变量对应的 setXxx() / getXxx() 方法
- 必须提供一个无参构造器;有参构造器可写可不写
※ 创建getter和setter的快捷键:右键→Generate→Getter and Setter→选中需要创建的变量
※ 创建有参数构造器的快捷键:右键→Generate→Constructor→选中需要创建的参数
※ 创建无参数构造器的快捷键:右键→Generate→Constructor→Select None
8 补充知识:成员变量 VS 局部变量
| 区别 | 成员变量 | 局部变量 |
| 类中位置不同 | 类中,方法外 | 常见于方法中 |
| 初始化值不同 | 有默认值,无需初始化 | 没有默认值,使用前需要完成赋值 |
| 内存位置不同 | 堆内存 | 栈内存 |
| 生命周期不 同 | 随着对象的创建而存在,随着对象的消失而消失 | 随着方法的调用而存在,随着方法的运行结束而消失 |
| 作用域 | 在所归属的大括号中 |
9 面向对象综合案例:模仿电影信息展示

本文详细介绍了面向对象编程的基础概念,包括类的设计与使用、对象的内存管理、构造器及this关键字的应用,并通过购物车案例深入讲解面向对象编程的技术要点。

286

被折叠的 条评论
为什么被折叠?



