对泛型的理解

//泛型 :泛型接口,泛型类,泛型方法,及泛型属性
  //以类型作为参数的类就叫泛型
  //作用:提高程序健壮性,简化代码以及方便扩展
  //泛型的默认值是Object
  //泛型的属性 属性的数据类型 由调用方来决定当前属性的数据类型 
  //Integer 是int 数据类型的封装类
  //Character 是 char 的类型的封装类
  //只能够是 类 而不是基础数据类型的关键字
  
  //泛型的类和属性(测试类调用)
  Person<String, Integer, Character> p=new Person();  //new出泛型类
  p.setPname("zs");
  p.setAge(18);
  p.setPsex('女');

//泛型的类和属性

public class Person<A,B,C> {
 private A pname;
 private B age;
 private C psex;
 public A getPname() {
  return pname;
 }
 public void setPname(A pname) {
  this.pname = pname;
 }
 public B getAge() {
  return age;
 }
 public void setAge(B age) {
  this.age = age;
 }
 public C getPsex() {
  return psex;
 }
 public void setPsex(C psex) {
  this.psex = psex;
 }

}

  
  //泛型的方法(测试类的调用)
  PersonMethod<String >  pm=new PersonMethod<>();
  pm.getValue("zs");

  //泛型的方法

public class PersonMethod<E> {

 public  E  getValue (E element) {
  if(element!=null) {
   return element;
  }
  return null;
 }

}
 
//泛型接口
/**
 * 泛型的结果 实现 可以在 实现类中定义好 也可以在调用的地方定义
 * 接口实现接口。  实现类实现(可以在接口或实现类中确定泛型的数据类型)
 * 基础接口  自定义接口  来扩展实现类的方法
 * @param <E>
 * @return
 */
public interface IBaseFace<E> {

 //CRUD
 
 /**
  * 增加的公共方法
  *
  * @param element
  * @return
  */
 public int addObject(E element);
 
 /**
  * 编辑
  * @param element
  * @return
  */
 public int editObject(E element);
 
 /**
  * 删除
  * @param element
  * @return
  */
 public int removeObject(E element);

}

原文地址:https://www.cnblogs.com/ly-0919/p/10898898.html