java面向对象三大特征是封装、继承、多态:封装通过private属性与public getter/setter实现访问控制与校验;继承以is-a关系构建类层次,支持代码复用与统一类型(单继承+object根);多态通过父类引用调用子类重写方法,提升灵活性与可扩展性。

Java 中面向对象的三大特征是封装、继承、多态。它们不是孤立的概念,而是协同作用,共同支撑起清晰、安全、可扩展的代码结构。
封装:把数据和操作“打包上锁”
封装的核心是控制访问——把类的属性设为 private,不让外部直接读写;再提供 public 的 getter 和 setter 方法作为唯一入口。
这样做不只是为了“藏起来”,更关键的是:
- 在 setter 里加校验逻辑,比如设置年龄时拒绝负数或超大值
- 后续修改内部存储方式(如把字符串 name 拆成 firstName + lastName),只要 getter/setter 行为不变,调用方完全不用改
- 使用者只关心“怎么用”,不需了解“怎么存”,降低理解成本
继承:让类之间形成“家族谱系”
继承体现的是 is-a 关系,比如 Dog extends Animal,说明“狗是一种动物”。子类自动获得父类非私有的属性和方法。
实际开发中,它主要解决两类问题:
- 避免重复定义共性内容:老师和学生都有姓名、年龄、休息行为,就提取到父类
Person中 - 支持层次化建模:
Animal → Mammal → Dog,越往下越具体,越往上越通用
注意 Java 只支持单继承,但所有类都隐式继承自 Object,这是统一类型的根基。
多态:同一调用,不同响应
多态让程序更灵活,典型形式是:父类引用指向子类对象,运行时才决定执行哪个版本的方法。
例如:
-
Animal a1 = new Dog(); a1.sound();→ 输出“汪汪” -
Animal a2 = new Cat(); a2.sound();→ 输出“喵喵”
前提是子类重写了父类的 sound() 方法。这种机制让新增动物类型(比如 Bird)无需改动原有调用逻辑,只需继承并重写即可,极大提升可扩展性。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











