面向对象概述
面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,它将程序中的数据和操作组织为"对象"。Java是一种纯面向对象的语言,几乎一切皆为对象。
封装
把数据和操作封装在类中
继承
子类继承父类的特性
多态
同一接口的不同实现
类的定义
类(Class)是创建对象的模板或蓝图,它定义了对象的属性和行为。
// 类的定义语法
public class 类名 {
// 属性(字段)
访问修饰符 数据类型 字段名;
// 方法
访问修饰符 返回类型 方法名(参数) {
// 方法体
}
}
对象的创建和使用
对象(Object)是类的实例,通过new关键字创建。
// 创建对象
类名 对象名 = new 类名();
// 访问成员
对象名.方法名();
对象名.属性名;
成员变量和局部变量
| 区别 | 成员变量 | 局部变量 |
|---|---|---|
| 声明位置 | 类中,方法外 | 方法内或代码块内 |
| 初始化 | 有默认值 | 无默认值,必须手动赋值 |
| 内存位置 | 堆内存 | 栈内存 |
| 生命周期 | 对象创建到对象销毁 | 方法调用开始到方法结束 |
封装
封装是面向对象的第一特性,它把数据和操作封装在类中,通过访问修饰符控制访问权限,保护数据安全。
访问修饰符
| 修饰符 | 同类 | 同包 | 子类 | 不同包 |
|---|---|---|---|---|
| private | ✓ | ✗ | ✗ | ✗ |
| default | ✓ | ✓ | ✗ | ✗ |
| protected | ✓ | ✓ | ✓ | ✗ |
| public | ✓ | ✓ | ✓ | ✓ |
最佳实践:属性通常用private修饰,提供public的getter和setter方法访问,这叫做属性封装。
JavaBean规范
JavaBean是一种遵循特定规范的类,用于封装数据:
类必须用public修饰
有无参构造方法
属性用private修饰
提供getter和setter方法
getter方法命名:get + 属性名(boolean用is)
setter方法命名:set + 属性名
小结
- 类是对象的模板,定义对象的属性和行为
- 对象是类的实例,通过new关键字创建
- 成员变量定义在类中方法外,有默认值;局部变量定义在方法内,无默认值
- 封装通过访问修饰符控制成员访问权限,保护数据安全
- 常用访问修饰符:private(私有)、public(公共)
- JavaBean是封装的最佳实践,用于数据封装和传输
☕ Java 在线代码编辑器
📝 运行结果