[英]How to define an interface method to accept a class or any of its subclasses in Java?
[英]Creating a Java Interface with methods that accept any class as a parameter
我正在JSF中創建一個應用程序並使用休眠方式。 對於每個JSF頁面,我都想執行CRUD操作。 為了簡化我的編碼,我想創建一個具有四種執行CRUD方法的接口。 我希望接口中的方法接受任何類作為參數。
這是我的示例代碼:
interface performCrud
{
public void Create(Class cl);
public void delete(Class cl);
public void update(Class cl);
public void read(Class cl);
}
class newuser implements performCrud
{
@override
public void Create(UserDao userdao)
{
}
//Other implementations Follows
}
class newproduct implements performCrud
{
@override
public void Create(productDao productdao)
{
}
// Other implementations Follows
}
如果我明白您的意思,則應該使用泛型:
interface performCrud<T>
{
public void Create(T cl);
public void delete(T cl);
public void update(T cl);
public T read();
}
class newuser implements performCrud<UserDao>{
@override
public void Create(UserDao userdao)
{
}
....
}
噢,順便說一句,您的read
方法可能應該返回T
而不是接受T
類型的參數。 我相應地更改了界面。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.