java泛型场景补充

前言

本文不是对泛型的系统介绍,也不打算对其进行入门讲解,只是对遇到的一些泛型场景的补充。看过宋红康和韩顺平的javase课程可以花几分钟看看。

1.&符号在泛型中的使用,用来描述有边界的受约束泛型

java 复制代码
class A{}
interface B{}
public class C< T extends A & B>{}

这里的泛型类型受到约束,既要是A的子类,也要实现B的接口。注意虽然B是接口但是泛型仍要用关键字extends,并且写在A的右边。

2.泛型方法中的泛型参数在方法被调用时确定。常见形参位置带有泛型,然后根据传入实参确定,不再详叙。还有一种少见的情况是根据引用类型来确定的,需要注意。

java 复制代码
public class Testing {
//
	public <T> T generic(){
        String s1 = "generic";
        return (T)s1;
    }
	
	@Test
    public void test2(){
        ReflectionTest r1 = new ReflectionTest();
        String s1 = r1.generic();
        Sort s2 = r1.generic();

    }
}

这里强转成什么类型是由String s1或Sort s2决定的,此时才决定泛型类型。

返回值本身是String类,所以第一次调用不报错,第二次调用报错。

3.泛型通配符的读写情况

待更新

相关推荐
xcl092515 小时前
宠物商城社交托运购物系统开发实战:从架构设计到完整实现指南
java·spring boot
孙启超15 小时前
【AI开发之Rust】第 12 课:并发模型与同步原语
开发语言·后端·rust
没差c15 小时前
RetrofitClient写接口、导包、配置、路径
java·spring boot·okhttp
SL_staff15 小时前
MQTT Topic权限越界:JVS-IOT中系统Topic与自定义Topic的权责边界与验证实践
java·物联网·全栈
敲代码的瓦龙16 小时前
Jetpack?DataBinding!!!
android·java·开发语言·mysql·android-studio
斯维赤16 小时前
Spring AI | 结构化输出 & 多模态 一篇讲透
java·后端
程序员清风16 小时前
聊聊我的AI学习方法与思考!
java·后端·面试
AI深栈16 小时前
第 14 章 · LangGraph4j 入门:AI Agent 什么时候该上状态图
java·人工智能
爱奥尼欧16 小时前
【C++】map、set 的底层是什么?红黑树五条性质、插入旋转到模拟实现
开发语言·数据结构·c++
摇滚侠16 小时前
《Spring Boot 3:高级与架构设计》第 2 章 IOC容器的高级机制 Environment 个人理解 4
java·spring boot·笔记·后端