我正在创建一组类来表示遗留数据库中的各种数据。为了避免在构造函数中使用异常来表示错误条件,我决定使用工厂方法来创建我的各种对象。但是,在从这些类继承时,我正在努力找出如何最好地重用其中一些工厂。我正在寻找一个概念性的解释(即:最佳实践规定您应该...),而不是实际的代码示例(尽管代码示例总是受欢迎的)。
例如,假设我有一个名为User的类,其中包含一个createUser工厂方法。我还有一个名为Employee的类,它扩展了User类。如何重用(即调用)createUser方法中的所有代码,以便它填充从User类继承的所有Employee字段?
一个明显的“解决方法”是将Employee类更改为具有User类而不是扩展它,但这与常规OO原则不符。
例如,假设我有一个名为User的类,其中包含一个createUser工厂方法。我还有一个名为Employee的类,它扩展了User类。如何重用(即调用)createUser方法中的所有代码,以便它填充从User类继承的所有Employee字段?
一个明显的“解决方法”是将Employee类更改为具有User类而不是扩展它,但这与常规OO原则不符。