我有一些奇怪的问题。
我在java中有一个接口:
public interface Inventory{
public void add(// take an object of a class);
public int delete(// take an object of a class);
public int edit(// take an object of a class);
}
然后我写了一个实现接口的类。
public class Supply implements Inventory{
public void add( // object of some class) {}
public int edit( // object of some class) {}
public int delete( // object of some class) {}
}
然后我写了另一个实现接口但在括号中有不同对象名的类。
public class support implements Inventory{
public void add(// object of different class) {}
public int edit(// object of different class) {}
public int delete(// object of different class) {}
}
我的问题是:为了使其他类采用任何想要以自己的方式实现的对象名,必须在接口方法中编写的参数是什么。
答案 0 :(得分:4)
这就是泛型的用途。您可以使用方法Inventory<T>
创建接口void add(T t)
。然后,您可以使用方法Inventory<Product>
创建一个实现add(Product p)
的类,但您也可以使用方法Inventory<Supplier>
创建一个实现void add(Supplier s)
的类。