java - 无状态对象的良好实践与否

标签 java class oop object stateless

<分区>

这是我对无状态对象的理解:任何从没有类变量的类创建的对象都是无状态对象。 我的问题是什么时候应该编写无状态类。拥有无状态对象是一个好习惯吗?

最佳答案

如果您需要“将功能作为参数传递”,则无状态对象很有用。由于函数在 java 中不是对象,因此将函数作为参数传递对象是一种实用的方法。

例如,Comparator 可以用于排序,如果一个类没有实现 Comparable,或者如果您需要支持使用不同定义的“<”进行排序-关系。 (例如升序/降序;按不同属性排序...)

工厂(参见 http://www.oodesign.com/factory-pattern.html )可以是无状态对象。工厂的所有功能都可以创建对象和创建所需的所有参数 它们可以作为工厂函数的参数给出。

关于java - 无状态对象的良好实践与否,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20831885/

相关文章:

java - 通过移动设备访问 Java Web 应用程序

java - JPA 实体的 equals 和 hashcode 中应该包含什么

java - 如何找出某个类属于哪个 JAR 文件?

javascript - V-bind等级多种选择

c++ - 从带有空格分隔符的文本文件中将对象读入数组

javascript - 使用对象的 for 循环打印出每个唯一对象的属性

java - Android 反序列化 Arraylist 的速度问题

java - 无法在 bash 中找到或加载主类

Java 继承和 super() 未按预期工作

java - 尝试使用 MySQL 连接器在 java 中创建存储过程(从文本文件)