比如实现学生信息管理,1:我定义一个学生类,里面有修改,增加这些功能
2.定义学生类,修改类,增加类。为什么是第二种好,什么模块化,封装什么的我
不太懂,为什么别人说第二种修改起来简单我不理解啊第一种在那一个类里改函数不就得了啊
就一套变量啊,第二种每个类都有一套,比第一种简单?好处到底在那???
我不知道别人是谁?你去反问他什么是面向对象?你觉得有必要抽象出修改类和增加类么?你做的是什么系统?难道有那么多的**不同的修改和增加**么?如果只是面向学生信息管理,那我可以很明确的告诉你,而且任何一个有面向对象思想的人都会选择第一种(这里我其实有一个疑惑,你所谓的增添和修改是什么,我觉得对于学生信息管理系统,学生有的行为主要还是以查询为主,修改和增添信息应该是管理员做的),因为当你抽象出学生这个类了之后就要考虑他有什么行为,按照你的说法,那么他就有增添和修改的行为,所以将其作为各自作为一个方法放在学生这个类里面,没错啊。这里我就不多说了,你去问你所谓的别人,问他的分析过程是怎样的。
类可以实现对数据的封装,使用类和使用函数不矛盾,可以在类里定义函数。光使用函数,那么数据就要自己维护了。
别人说的?我擦,按理说应该是定义一个学生类,然后在定义一个学生操作类(包含所有的操作:增删改查等)。
啥也不说了,直接用Spring框架的开发结构来对比吧。现在这种b/s结构系统,java用springMVC框架比较流行。
这个框架实体类(entity层)应该就是这里说的学生类,里边有属性对应数据表。有set和get方法,对应获取和修改属性。
dao层是操作数据库层,基本就是增删改查entity对应的表。
还有其他层就不说了。这两层明显是,基本信息是类,操作是一个类。