java - java中动态创建方法

标签 java

我有一个以下形式的 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/

相关文章:

java - JWS 中 Java 的两个副本

java - 将 int 输入解析为 char

java - 如何将文件附加器与 jar 文件一起使用?

java - 如何使用 Selenium 和 xpath 定位元素?

java - 有没有办法从 "onResponse"函数接收响应对象?

java - 如何将 Context 对象传递给调用的线程

java - 异步任务下载的进度条

java - 尝试转移所有权

java - 解决 Java 中时间错误的错误格式?

java - 使用 mysql 填充 JTable