首页 > Java > java教程 > 正文

Java OOP中类与对象有什么区别_类与对象的关系图示讲解

P粉602998670
发布: 2025-12-18 16:38:38
原创
192人浏览过
类是抽象模板,不占堆内存;对象是具体实例,创建时在堆中分配独立内存。类定义共性属性与方法,对象拥有独立字段值并共享类中方法代码。

java oop中类与对象有什么区别_类与对象的关系图示讲解

类是模板,对象是实例。类定义了“一类事物”的结构和行为(比如属性和方法),而对象是根据这个模板创建出来的具体个体(比如“张三”这个人、一辆具体的“宝马X5”)。没有类,就无法创建对象;没有对象,类就只是纸上蓝图,不占用内存。

类:抽象的设计图纸

类是抽象的、静态的,它不占内存空间(编译时存在,运行时不占堆内存)。它描述了所有同类对象共有的特征:

  • 有哪些属性(字段)——比如String nameint age
  • 能做什么操作(方法)——比如void speak()void walk()
  • 如何初始化(构造方法)——比如Person(String name, int age)

类本身不能直接使用功能,就像你不能用“汽车设计图”去开车。

对象:具体的运行实体

对象是动态的、实际存在的,创建时(用new)会分配内存(在堆中),每个对象有自己独立的一份属性值:

立即学习Java免费学习笔记(深入)”;

Find JSON Path Online
Find JSON Path Online

Easily find JSON paths within JSON objects using our intuitive Json Path Finder

Find JSON Path Online 193
查看详情 Find JSON Path Online
  • Person p1 = new Person("张三", 25);
  • Person p2 = new Person("李四", 30);

此时p1p2是两个不同对象:他们名字不同、年龄不同,但都具备speak()walk()的能力——这些能力来自类,而数据属于各自对象。

类与对象的关系图示(文字简绘)

想象一个工厂流水线:

     ┌───────────────┐
     │    Person类    │ ← 抽象模板(不占运行内存)
     ├───────────────┤
     │ - name: String │
     │ - age: int     │
     │                 │
     │ + speak()      │
     │ + walk()       │
     └───────────────┘
              ↓ new
   ┌─────────────────┐     ┌─────────────────┐
   │     p1对象       │     │     p2对象       │
   ├─────────────────┤     ├─────────────────┤
   │ name = "张三"    │     │ name = "李四"    │
   │ age  = 25        │     │ age  = 30        │
   │ [speak()代码复用] │     │ [speak()代码复用] │
   └─────────────────┘     └─────────────────┘
         ↑内存中真实存在           ↑内存中另一个真实存在
登录后复制

关键区别一句话总结

类是类型(type),用于声明变量和创建对象;对象是(value),是程序运行时真正参与操作的数据实体。你可以声明Person p;(只定义类型),但必须p = new Person(...);才真正诞生一个对象。

基本上就这些。不复杂,但容易忽略“类不占堆内存”和“方法共用、字段独立”这两个核心点。

以上就是Java OOP中类与对象有什么区别_类与对象的关系图示讲解的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号