gpt4 book ai didi

Java 接口(interface)反射

转载 作者:行者123 更新时间:2023-11-30 03:01:45 25 4
gpt4 key购买 nike

我的问题主要是如何创建一个“动态”方法,我可以为不同的对象覆盖该方法。

所以有了这个界面

public interface GenericInterface{

public List<Object> getAll() throws Exception;

public Object addObject(Object object) throws Exception; // This should use reflection

}

现在在另一个接口(interface)中扩展 GenericInterface

public interface CarInterface extends GenericInterface{

@Override
List<Object> getAll() throws Exception;

@Override
public Object addObject(Object object) throws Exception;


public Object newSpecificMethod() throws Exception;

}

现在有公开课

pulic Car implements CarInterface{
//...

@Override
public Object addObject(Object object) throws

//.. here some logic

return object;
}

//...
}

那么我怎样才能“覆盖”方法的名称呢?

而不是

Car.addObject(object);

我想要

Car.addCar((Car) object);

我知道这与反射有关,但我不知道该怎么做。有什么建议吗?

最佳答案

使用通用:

public interface GenericInterface<T>{

public List<T> getAll() throws Exception;

public T addObject(T object) throws Exception;
}

public interface CarInterface extends GenericInterface<T>{
public Object newSpecificMethod() throws Exception;
}

关于Java 接口(interface)反射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35772090/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com