Java:泛型

泛型简介

将类型作为参数传递
泛型必须是应用类型
常见形式有:泛型类 泛型接口 泛型方法
泛型好处:提高代码的重用性 防止类型转换异常 提高代码的安全性

泛型类

/*****************************泛型类*******************************/
/**
* 泛型类
* 语法:类名<T>
* T是占位符 表示一种引用类型 如果编写多个使用逗号隔开
*/
public class Generic_Class<T> {

    //创建泛型变量
    T t;

    //泛型作为方法的参数
    public void show(T t){
        System.out.println(t);
    }

    //泛型作为返回值
    public T getT(){
        return t;
    }
}

/***************************实现类*******************************/
//字符串
Generic_Class<String> geclass = new Generic_Class<>();
geclass.t = "泛型参数";
geclass.show("输出泛型参数");
System.out.println(geclass.getT());

//整数
Generic_Class<Integer> geclass2 = new Generic_Class<>();
geclass2.t = 12;
geclass2.show(13);
System.out.println(geclass2.getT());

泛型接口

/*****************************泛型接口*************************/
/**
 * 泛型接口
 * 语法:接口名<T>
 * 注意:不能泛型静态常量
 */
public interface Generic_Interface<T> {
    String name = "zyt";
    T server(T t);
}

/****************************实现接口************************/
public class My_Generic_Interface<T>  implements Generic_Interface<T>{
    @Override
    public T server(T t) {
        System.out.println(t);
        return t;
    }
}

/**************************实现类***************************/
My_Generic_Interface impl = new My_Generic_Interface();
My_Generic_Interface<String> impl2 = new My_Generic_Interface<>();
impl.server("zyt");
impl.server(12);
impl2.server("zyt");

泛型方法

/*****************************泛型方法*********************/
/**
 * 泛型方法
 * 语法:<T> 返回值类型
 */
public class Generic_Method {
    //泛型方法
    public <T> T show(T t){
        System.out.println("泛型方法" + t);
        return t;
    }
}

/**************************实现类**************************/
Generic_Method methods = new Generic_Method();
methods.show("zyt");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值