zoukankan      html  css  js  c++  java
  • java泛型总结

    一:什么是泛型?

    泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。

    二:泛型的使用

    泛型有三种使用方式,分别为:泛型类、泛型接口、泛型方法

    1.泛型类:

    泛型类,是在实例化类的时候指明泛型的具体类型

    package com.entity;
    /**
     * 
     * @author 花开一季
     * @param <A>
     * @param <B>
     * @param <C>
     */
    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;
        }
    }

    二:泛型接口

    泛型接口与泛型类的定义和使用基本相同,泛型接口常被用在各种类的生产器中。

    /**
     * 可以在当前的接口确定他的数据类型
     * @author 花开一季
     *
     */
    public interface IPersonFace  extends IBaseFace<Person<String,Integer,Character>> {
    
        public  boolean  queryUserName(String uname);
    }

    三:泛型方法

    泛型方法,是在调用方法的时候指明泛型的具体类型

    /**
         * 增加的公共方法
         * 
         * @param element
         * @return
         */
        public int addObject(E element);
        
        /**
         * 编辑
         * @param element
         * @return
         */
        public int editObject(E element);
        
        /**
         * 删除
         * @param element
         * @return
         */
        public int removeObject(E element);
        
        /**
         * 查询单个对象的方法
         * @param element
         * @return
         */
        public E queryObject(E element);
        
        /**
         * 查询多个对象的方法
         * @param element
         * @return
         */
        public List<E> queryObjects(E element);
        
        /**
         * 查询并分页
         * @param element
         * @return
         */
        public List<E> queryObjectPage(E element);

    谢谢观看!

  • 相关阅读:
    FAST特征点检测算法
    ORB算法介绍(转)
    centos 安装MATLAB :设置回环设备失败: 没有那个文件或目录
    特征检测和特征匹配方法
    摄像机标定-- 张正友标定推导详解
    sublime text plugins
    使用Sublime Text搭建python调试环境[转]
    python OS 模块
    python 守护进程,监控进程
    python 带正则的search 模块
  • 原文地址:https://www.cnblogs.com/huangting/p/10899010.html
Copyright © 2011-2022 走看看