【发布时间】:2013-06-18 02:01:19
【问题描述】:
只是一个理论上的问题,可能会导致设计方面的一些考虑。如果你用这个可重用的类替换 POJO 会怎样?它可能会避免一些样板代码,但它会带来什么问题?
// Does not include failsafes, guards, defensive copying, whatever...
class MySingleGetterAndSetterClass{
private HashMap<String,Object> myProperties;
public SingleGetterAndSetter( String name ){
myProperties = new HashMap<String,Object>();
myProperties.put( "name", name );
}
public Object get( string propertyName ){
return myProperties.get( propertyName );
}
public Object set( string propertyName, Object value ){
myProperties.put( propertyName, value );
}
}
【问题讨论】:
-
你的
set方法应该调用get吗? -
不。固定的。在记事本中写了这个:p
-
我浏览器中的代码检查器不是最好的;)
-
+1 好问题,因为有些语言会这样做,有些游戏是这样写的stackoverflow.com/questions/17159592/…
-
游戏可能是个特例。例如,我见过一个使用公共属性的流行射手。不知道这是出于性能原因还是只是为了争取时间。
标签: java attributes hashmap getter-setter