Java面向对象通过类抽象共性、对象表示实例,实现现实映射;类含属性与方法,对象独立存在并协作交互,封装确保状态合法与行为可控。

Java 面向对象通过“类”定义现实事物的共性,“对象”代表具体实例,把现实世界中的人、物、行为直接映射成可运行的程序结构。
类是现实事物的抽象蓝图
现实中的“学生”不是某个具体人,而是一类具有姓名、年龄、学号等特征,以及学习、自我介绍等行为的群体。类就负责刻画这种共性:
- 属性(成员变量)对应事物的状态:比如 String name 描述学生叫什么,int age 描述几岁;
- 方法(成员函数)对应事物的能力:比如 void study(String subject) 表示能学某门课,void introduce() 表示会做自我介绍;
- 类名用大驼峰(如 Student、Car),贴近自然语言,一眼看懂它模拟的是什么。
对象是现实实体的具体化身
类只是设计图,真正干活的是对象。用 new 关键字创建对象,就像按图纸造出一台真实洗衣机或一个真实学生:
在调试 Java 后端 API 故障时使用此技能,尤其适用于以下任务:分析日志、跨 Controller、Service 和 Mapper 层追踪请求、定位异常根因、检查 SQL 执行或参数流转,以及生成简洁的诊断结论与修复方案。
- Student zhangsan = new Student(); —— 创建张三这个学生;
- zhangsan.name = "张三"; zhangsan.age = 20; —— 赋予他具体状态;
- zhangsan.study("Java编程"); —— 让他执行具体行为;
- 每个对象在内存中独立存在,张三和李四的姓名、年龄互不影响,就像现实中两个不同的人。
对象协作还原真实场景
现实世界从不只有一个孤立个体。面向对象的优势在于让多个对象按角色互动:
立即学习“Java免费学习笔记(深入)”;
- “老师”对象调用“布置作业”方法,把任务传给“学生”对象;
- “学生”对象调用“提交作业”方法,把结果交给“教务系统”对象;
- “洗衣机”对象接收“脏衣服”对象和“洗衣粉”对象,再执行 start() 方法完成整个流程;
- 这种交互不写成一长串步骤,而是由各对象自主响应,更贴近真实逻辑。
封装让模拟更真实可信
现实里你不能直接篡改一个人的出生日期,也不能让手机屏幕尺寸变成负数。Java 用 private 修饰属性,再提供 getter/setter 方法控制访问:
- 在 setAge(int age) 里加判断:if (age 150) throw new IllegalArgumentException();
- 这样对象的状态始终合法,模拟出和现实一致的约束力;
- 外部只关心“能做什么”,不关心“怎么做”,就像你按洗衣机按钮,不用懂电机原理。

















