java泛型学习4之自定义泛型类(DAO)

 

例一

package cn.xy.test;

public class GenericDao
{
 public <T> void add(T t)
 {
 }

 public <T> T getModelById(int id)
 {
  return null;
 }
}

这个类中泛型方法被常规使用,但两个方法之间的T没有联系和相互约束。

 

 

 

例二

package cn.xy.test;

import java.util.Set;

public class GenericDao2<T>
{
 public void add(T t)
 {

 }

 public T getModelById(int id)
 {
  return null;
 }

 public Set<T> getModels(String conditions)
 {
  return null;
 }

 // 泛型类型不能被静态方法使用
 //public static void update(T t){}

 // 普通泛型方法的写法允许
 public static <T> void update(T t)
 {
 }
}

GenericDao2<Person> g = new GenericDao2<Person>();
Person p = g.getModelById(1);

 

 

上一篇:是时候解放一下广大程序员的双手了


下一篇:C++、Python、数据结构与算法、计算机基础、数据库教程汇总!