ジェネリックスを使用すると、クラスまたはインターフェイスを定義するときに、識別子を使用してクラス内のプロパティの型、またはメソッドの戻り値とパラメーターの型を表すことができます。この型パラメータは、使用時 (たとえば、このインターフェイスの継承または実装、この型の変数の宣言、オブジェクトの作成) に決定されます (つまり、型引数とも呼ばれる実際の型パラメータを渡します)。
ジェネリックはパラメータ化された型です。
ジェネリックは JDK5.0 で登場したもので、以前のバージョンでは使用できません;
ジェネリックは <>;
のペアで記述する必要があります。ジェネリックの型は基本データ型ではなく、参照型である必要があります。
基本データ型の場合は、そのラッパー クラスを使用する必要があります。複数のジェネリック型がある場合は、コンマを使用して区切ります;
例:
public class DAO<T> { private Map<String ,T> map = new HashMap<>(); public void save(String id,T entity){ map.put(id,entity); } public T get(String id){ return map.get(id); } public void update(String id,T entity){ map.put(id,entity); } public List<T> list(){ Collection<T> values = map.values(); List list = new ArrayList(); for (T value : values) { list.add(values); } return list; } public void delete(String id){ map.remove(id); } }
public class DAOTest { public static void main(String[] args) { DAO<User> userDAO = new DAO<>(); User user1 =new User(1,12,"张三"); User user2 =new User(2,13,"李四"); User user3 =new User(3,14,"王五"); userDAO.save("1",user1); userDAO.save("2",user2); userDAO.save("3",user3); System.out.println(userDAO.get("1")); userDAO.update("1",new User(1,18,"张三")); List<User> list = userDAO.list(); System.out.println(list); userDAO.delete("1"); System.out.println(userDAO.list()); } }
以上がJavaジェネリックを適用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。