面向对象
2025-04-10 18:40:53 1 举报
AI智能生成
面向对象基本概念
作者其他创作
大纲/内容
封装
核心思想
隐藏内部细节:仅暴露必要接口
数据保护:防止外部直接访问或修改敏感数据
实现手段
访问修饰符
private
protected
默认
public
Getter/Setter方法
不可变对象(Immutable Objects)
属性设为 private final,无 Setter 方法
实际应用
数据校验
逻辑隔离
隐藏复杂实现(如数据库操作封装在 UserDAO 类中)
设计模式
工厂模式(隐藏对象创建细节)
单例模式(控制实例化过程)
优点
安全性
防止非法数据修改(如余额 balance 只能通过 deposit() 修改)
可维护性
内部逻辑修改不影响外部调用(如更改属性名 age → userAge)
模块化
高内聚低耦合,代码更易扩展
未封装后果
直接修改属性导致数据不一致
类与对象的关系
抽象&具体
类是抽象概念
对象是具体实体
依赖关系
类定义对象的结构和行为
对象依赖类的定义进行实例化
类
定义
抽象的数据类型,描述对象的共同属性和行为
组成
属性(成员变量)
实例变量
每个对象独立存储(如 name)
静态变量
类级别共享(如 static int count;)
方法(成员函数)
实例方法
操作实例变量(如 bark())
静态方法
类级别操作(如 static void printCount())
构造函数
默认构造方法(无参数)
自定义构造方法(带参数初始化)
代码块
静态代码块(类加载时执行)
实例代码块(对象创建时执行)
特性
继承
多态
对象
定义
类的实例化实体,占用堆内存
生命周期
创建
new 关键字分配内存并调用构造函数
使用
通过引用操作对象(如 myDog.bark())
销毁
垃圾回收(GC)自动回收无引用对象
对象的内存模型
栈内存
存储对象引用(如 myDog)
堆内存
存储对象实例数据(如 name="Buddy")
对象间交互
通过方法调用传递消息
0 条评论
下一页