表格结构和类结构
我们在现实生活中,思考问题、发现问题、处理问题,往往都会用“表格”作为工具。
实际上,“表格思维”就是一种典型的面向对象思维。
实际上,互联网上所有的数据本质上都是“表格”。我们在这里通过从表格表示数据开始,引入对象和类。大家就会神奇的发现,原来“表格就是对象”。
以下表为例:
ID | 姓名 | 岗位 | 基本工资 | 绩效工资 | 入职日期 |
10001 | 小郭 | 后端程序员 | 20000 | 2000 | 9月1日 |
10002 | 小孙 | 前台 | 8000 | 1500 | 9月1日 |
10003 | 小管 | UI设计师 | 15000 | 3000 | 9月1日 |
10004 | 小霍 | 人工智能训练师 | 18000 | 2000 | 9月1日 |
上面这个表,可以将公司所有员工信息“结构化”、“标准化”,让管理者可以方便的进行统计和管理。
我们也经常将表中的“列”,叫做“字段”,英文中统一叫做“field ”。显然 field 定义了表的结构。我们可以通过增加新的 field( 列 )),让表中所有的行增加数据:
ID | 姓名 | 岗位 | 基本工资 | 绩效工资 | 入职日期 | 工作地址 |
10001 | 小郭 | 后端程序员 | 20000 | 2000 | 9月1日 | 北京 |
10002 | 小孙 | 前台 | 8000 | 1500 | 9月1日 | 北京 |
10003 | 小管 | UI设计师 | 15000 | 3000 | 9月1日 | 杭州 |
10004 | 小霍 | 人工智能训练师 | 18000 | 2000 | 9月1日 | 上海 |
1. 表格的动作和类的方法
每个公司的雇员都要有相关的动作。比如:所有雇员每天的工作标准动作有:
1. 参加晨会,领取当天任务
2. 午休
3. 提交工作日志
我们可以在表中将动作信息也包含进去:
ID | 姓名 | 岗位 | 基本工资 | 绩效工资 | 入职日期 | 工作地址 | 每天工作的标准 |
10001 | 小郭 | 后端程序员 | 20000 | 2000 | 9月1日 | 北京 | 1. 参加晨会,领取当天任务 2. 午休 3. 提交工作日志 |
10002 | 小孙 | 前台 | 8000 | 1500 | 9月1日 | 北京 | |
10003 | 小管 | UI设计师 | 15000 | 3000 | 9月1日 | 杭州 | |
10004 | 小霍 | 人工智能训练师 | 18000 | 2000 | 9月1日 | 上海 |
2.对象对应“表中的行数据”
显然,上面每一行数据都有“姓名”、“基本工资”等“列”,也都有标准的“晨会动作”。在面向对象编程中,下面三句话大家记住:
1. 表结构对应:类结构
2. 一行数据对应:一个对象
3. 表中所有数据对应:这个类的所有对象
因此,上面的四行数据,我们使用四个对象就需要这样表示(假设有对应的构造方法,
如下代码是示意,非真实代码)