班级成员是强制性的?

时间:2013-12-10 14:01:33

标签: class oop methods

我记得在几年前的某个地方阅读(或听到)类必须有一个操作,一个属性和一个操作,或者至少一个属性作为强制性要求 - 而不是空的。我要问的是,是否违反软件工程规则才能拥有一个空类,或者一个属性或操作没有另一个类的类。

我只是想确保我的班级图表对我的项目是正确的。

谢谢。

2 个答案:

答案 0 :(得分:2)

你当然可以拥有一个属性但没有操作的类,反之亦然。

对于没有属性的类没有操作 - 大多数(所有?)OO语言都允许这样做,但当然这样的类除非作为基类,否则不会非常有用某种。

答案 1 :(得分:1)

工程学就是打破规则和思维方式。

没有属性(属性等)或方法(操作等)的空类就是:一个什么都不做的抽象数据类型。

如果没有预定义的话,很多(如果不是大多数)类型系统提供这样的东西。

如果你定义自己的,你应该有充分的理由这样做。例如,在C ++中,元编程中用作对象或标记的类通常是完全空的,因为它只用于在编译时通过类型系统或函数重载来传递信息,理想情况下在运行时不存在。