Java 泛型总结

目录

一、泛型类

 二、泛型方法

三、泛型接口

 总结:


一、泛型类

书写格式: 类名<自定义字符>

案例:

package com.wxl.springbootpro01;


import org.junit.jupiter.api.Test;

public class MyTest {
    @Test
    public void test(){
        Dog<String> dog=new Dog<String>();
        dog.setAttr("name-->Jack");
        System.out.println(dog.getAttr());
        Dog dog2=new Dog();
        dog2.setAttr(11);
        System.out.println(dog2.getAttr());
        dog2.setAttr(true);
        System.out.println(dog2.getAttr());
    }
}

class Dog<T>{
    private T attr;

    public T getAttr() {
        return attr;
    }

    public void setAttr(T attr) {
        this.attr = attr;
    }
}

结果:

 二、泛型方法

package com.wxl.springbootpro01;


import org.junit.jupiter.api.Test;

public class MyTest {
    @Test
    public void test(){
        Dog dog=new Dog();
        dog.getAttr("Jack");
        dog.getAttr(12);
        dog.getAttr(true);
    }
}

class Dog{
    public <T> void getAttr(T t) {
        System.out.println(t);
    }
}

结果:

三、泛型接口

package com.wxl.springbootpro01;


import org.junit.jupiter.api.Test;

public class MyTest {
    @Test
    public void test(){
        Dog dog=new Dog();
        dog.biteSkill("hhh");
        dog.biteSkill(123);
        dog.biteSkill("Jack");
    }
}

class Dog<T> implements bite<T>{
    @Override
    public void biteSkill(T t) {
        System.out.println(t);
    }
}

interface bite<T>{
    public abstract void biteSkill(T t);
}

结果:

 总结:

可以看到泛型类节省了很大的代码量,不用再重复书写不同类型参数的方法,并且减少了类型转换。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值