回答

收藏

方法设计-清晰或多功能

技术问答 技术问答 276 人阅读 | 0 人回复 | 2023-09-12

我已经用Java和C#制作一个类,可以执行SQL比如我有个名字叫查询。Delete该方法接受多个参数。" w- C  m* l, H3 N* s
public static int Delete(String table,String column,String operand,Object value)我将 _值_作为对象类型,因为我可能想删除它String,Integers或booleans这意味着这种方法足够灵活,可以支持不同的类型。然后我添加了 ) }: S6 L9 b2 {4 Y
这取决于它是否是字符串还是不使用字符查询 的instanceof    (在C#或.GetType)在Java测试
8 N1 v2 u. @1 d% p0 i粗略的例子:
0 u& L! v1 T! |' H5 ]4 x. b' E( @if (value instanceof String)          System.out.println("It's a String");      else          System.out.println("It's not a String");   }在实现这一类的其他部分时,我开始考虑上述方法是理想的方法,还是其他方法应该根据特定的数据类型实现,一种用于容纳String,另一种用于Integer,依此类推。& \; u* F/ O# C7 Y6 ~
如果我想实现这一点,这意味着其他逻辑差异最小的方法,但每种方法只有一个目的,这使得它们很容易遵循和记录。另一方面,如果我按原样操作,可以生成和维护的代码要少得多,它可以管理任何类型的代码Delete语句(就数据类型而言)只需要几个if句子。确定通过参数传递的对象类型。
) d  L! G1 H. T3 |* X从面向对象/最佳代码实践的角度来看,哪种方法最好?
0 L  Q1 B2 C2 M  ^* @感谢提供信息!" k! \0 \" f' ?& i! m( L0 q7 k
                                                               
/ p9 {( q. ~! M1 |    解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则