java - 在父类(super class)静态方法中实例化子类

标签 java reflection static

我正在用 Java 开发 ORM。我想做这个。

class Model {
    public static Model find(Object id) {
    }
}

class User extends Model;
class Post extends Model;

User user = User.find(15);
Post post = Post.find(1325);

我该如何做这个或类似的事情。我不想传递 Class 对象来查找方法。

最佳答案

你不应该这样做。父类(super class)永远不知道它是如何扩展的。

改用泛型:

package persistence;

public interface GenericDao<T, K extends Serializable>
{
    T find(K id);
    K save(T value);
    void update(T value);
    void delete(T value);
}

关于java - 在父类(super class)静态方法中实例化子类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6478071/

相关文章:

java - tomcat请求中的MimeHeader和Header有什么区别?

java - "Load"基于字符串名称的类,并使用字符串名称访问字段值

arrays - 从随机数组中打印新的素数数组?

java - java中显式创建线程导致的问题

java - 如何向字符串数组添加替代元素

c# - 动态加载程序集的应用程序配置

Java (Android) 库项目 - 如何设计可选模块?

c++ - 用静态库替换dll

有条件定义静态变量

java - 我的 Android 应用程序与巨大的 MS Access 数据库的 Ucanaccess 连接在 Android 设备上占用了过多的堆空间。还有其他选择吗?