我有一个以下形式的 csv 文件:
狗类型、狗名称、狗颜色 德国牧羊犬,吉姆,棕色
在主类中,我创建了一个狗对象(来自狗类),使得
dog.setDogType = GermanShephred;
dog.SetDogName = Jim;
dog.SetDogColor = brown;
然后将其放入哈希表中:
hashtable.put(dog,GermanShephred);
我需要概括代码,这意味着由用户决定类别的数量(DogType、DogName、DogColor、DogAge、DogSex),并且 SetDogName 等方法不应再硬编码在狗类中因为我们事先并不知道会有多少个类别。
我不知道该怎么做。我应该在狗类中动态创建方法吗?
感谢您的帮助!
最佳答案
也许你可以在一张 map 中保存动物的所有属性:
public class Dog
{
final public Map<String,String> attributes = new HashMap<>();
}
然后
final Dog dog = new Dog();
dog.attributes.put("type", "German Shepherd");
dog.attributes.put("name", "Jim");
dog.attributes.put("color", "Brown");
将用户提供的任何属性加载到 map 中。当您需要输出/显示您的狗时,转储 map 值。
关于java - java中动态创建方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24920497/