zoukankan      html  css  js  c++  java
  • 泛型的概念

    //泛型
    //泛型类 泛型接口 泛型方法 泛型的属性
    //泛型的属性 优点:属性的数据类型由调用方来决定属性的数据类型
    //Interger 是int的封装类
    //character 是cha的封装类
    //必定只能是 类 而不是基础数据类型的关键字
    //泛型优势:方便扩张

    泛型的属性:

    // Person<String, Integer, Character>p=new Person<>();
    // p.setPname("zs");
    // p.setPage(18);
    // p.setPsex('女');
    // System.out.println(p.getPname());

    //泛型的方法:

    // PersonMethod<String> pm=new PersonMethod<>();
    // String s=pm.getValue("zs");
    // System.out.println(s);

    //泛型接口:

    package com.temp;

    import java.util.List;
    /**
    * 泛型的结果 实现 可以在实现类中定义号,也可以在调用的时候定义
    * 接口实现接口 实现类实现类
    * 基础接口 自定义接口
    * @author 公子
    *
    * @param <E>
    */

    public interface IBaseFace<E> {
    /**
    * 增加的公共方法
    * @param e
    * @return
    */
    public int addObject(E e);

    /**
    * 编辑
    * @param e
    * @return
    */
    public int editObject(E e);

    /**
    * 删除
    * @param e
    * @return
    */
    public int removeObject(E e);

    /**
    * 查询单个
    * @param e
    * @return
    */
    public E queryObject(E e);

    /**
    * 查询所有
    * @return
    */
    public List<E> getAll();


    package com.temp;

    /**
    * 可以在当前的接口中确定它的数据类型
    * @author 公子
    *
    */

    public interface IPersonFace extends IBaseFace<Person<String, Integer, Character>> {

    public boolean queryUserName(String uname);

      

    package com.temp;

    import java.util.List;

    public class PersonImpl implements IPersonFace {

    @Override
    public int addObject(Person<String, Integer, Character> e) {
    // TODO Auto-generated method stub
    return 0;
    }

    @Override
    public int editObject(Person<String, Integer, Character> e) {
    // TODO Auto-generated method stub
    return 0;
    }

    @Override
    public int removeObject(Person<String, Integer, Character> e) {
    // TODO Auto-generated method stub
    return 0;
    }

    @Override
    public Person<String, Integer, Character> queryObject(Person<String, Integer, Character> e) {
    // TODO Auto-generated method stub
    return null;
    }

    @Override
    public List<Person<String, Integer, Character>> getAll() {
    // TODO Auto-generated method stub
    return null;
    }

    @Override
    public boolean queryUserName(String uname) {
    // TODO Auto-generated method stub
    return false;
    }






    }

    泛型的方便是不言而喻的,有调用方的自定义数据类型就给予了很大的扩展空间,熟练使用泛型能减少很多的代码。









    }

    }

  • 相关阅读:
    bzoj 1231 [Usaco2008 Nov]mixup2 混乱的奶牛
    bzoj 1263 [SCOI2006]整数划分
    bzoj 1264 [AHOI2006]基因匹配Match dp + 树状数组
    bzoj 1230: [Usaco2008 Nov]lites 开关灯
    2015 icpc北京赛区 D 最小割
    HDU
    bzoj 1079: [SCOI2008]着色方案
    最大素因数
    最大素因数
    欧拉函数
  • 原文地址:https://www.cnblogs.com/hyfl/p/10898307.html
Copyright © 2011-2022 走看看