在某些编程API中,我看到了一个要调用的方法列表,比如getBoolean(String key,getDouble(String key)和getString(String key)。其他一些API使用一般的get(String key)方法,并返回您应该自己投射到适当类型的对象。
现在我正在编写自己的数据访问点,我想知道使用哪种方法。每种方法的优点和缺点是什么?你什么时候选择一个?
答案 0 :(得分:2)
优点:getBoolean(),getDouble()等允许您返回相应的基元类型。据我所见,这是任何人写这样的方法的主要原因。
答案 1 :(得分:1)
为最有可能使用的类型提供getter。没有正确或错误的方式。
答案 2 :(得分:1)
这取决于图书馆的目的。当输出是可预测的一组项目时,玩具可以具有特定的名称。与ResultSet中一样。 如果它是通用的,那么您将需要通用的get方法。像ObjectOutputStream
一样从很高的层面来看,您可能需要:getBoolean
,getDouble
,getIngeter
用于基元(或其各自的包装),getString
,用于获取对象的Strings
和通用get
或getObject
。
然而,对于非常通用的问题,这是一个非常通用的答案。你试图做的非常多地决定了这些东西。
答案 3 :(得分:1)
两个问题: 1)为什么不使用常规属性,àlà:
String getName()
Address getAddress()
Date getDateOfBirth()
等?
2)如果你想使用像:
这样的方法String getString(String key)
Double getDouble(String key)
Address getAddress(String key)
作为用户,我怎么知道哪些键与String类型的对象相关联,哪些键与Double类型的对象相关联?
我建议使用类似于1的解决方案。 如果我没有误解你的问题,那就是。