Comparable泛型踩坑
发表于|更新于
|浏览量:
善疑人者,人亦疑之;善防人者,人亦防之。——刘基
之前写的Comparable解决泛型限定问题
遇到了这种情况:

这是因为LocalDate没有实现Comparable<LocalDate>
而是由其实现的接口ChronoLocalDate去继承的Comparable<ChronoLocalDate>
并且LocalDate去实现的Serializable,而不是ChronoLocalDate

我们这里直接用的T extends Comparable<T>,此处传了LocalDate就是extends Comparable<LocalDate>
和实现Serializable的不是同一层级,所以我们需要指定为Comparable<? super T>,这个意思就是说允许Comparable里的类型是它的父类或者接口,具体super和extends区别可以看泛型的super和extends

改成Comparable<? super T>后,编译通过
相关推荐
2020-12-21
@Scheduled的使用
人之患在好为人师。——《孟子》 今天朋友问我定时任务怎么创建,让我们一起重温复习一下吧~ 首先需要在启动类上加@EnableScheduling注解(组件上也可以加) 然后在需要定时的方法上加上@Scheduled注解 1234567891011121314151617181920212223242526package com.ruben.task;import lombok.extern.slf4j.Slf4j;import org.springframework.scheduling.annotation.Scheduled;import org.springframework.stereotype.Component;/** * @ClassName: LogTask * @Description: 我还没有写描述 * @Date: 2020/12/21 0021 20:11 * * * @author: <achao1441470436@gmail.com> * @version: 1.0 * @since: JDK 1.8 */@Slf4j@Comp...
2024-10-25
一个自带流程设计器的工作流引擎warmflow
你与别人花费一样的时间,因为别人用心,而你吊儿郎当,所以到了最后检验成果的时候,别人成功,而你除了赔了时间之后,一无所得。——飞行员舒克 一个自带流程设计器的工作流引擎终于迎来了这个激动人心的版本1.3.0,不需要在为引入设计器而烦恼了,按照以下前四点,可以快速接入业务系统,下面介绍如何使用设计器 1. 引入依赖<dependency> <groupId>io.github.minliuhua</groupId> <artifactId>warm-flow-plugin-ui-sb-web</artifactId> <version>1.3.0</version> </dependency> 2. 后端放行部分路径 1、这两个路径需要放行,否则无法访问,/warm-flow-ui/**, /warm-flow/** 2、以下是spring-security放行配置示例 @Bean protected SecurityFilterC...
2023-03-03
flowlong
真正的科学家应该是个幻想家,谁不是幻想家,谁就只能把自己称为实践家——巴尔扎克 分享一个工作流框架:https://gitee.com/aizuda/flowlong FlowLong 飞龙 工作流 特别说明 flowlong 是基于 snakerflow 重构的 更适合中国人的国产工作流引擎 。 名字由来 snakerflow 蛇 (重构进化) flowlong 龙 中文名 飞龙 在天美好愿景!
2020-09-28
java多次调用,最后一次调用后才执行
追求使你充实,成功和失败都是伴奏。——史铁生 前段时间写了java防抖,不过之前写的都是在一定时间内只执行一次,超过这个时间,防抖又失效了,假设我现在有这样一个需求: 在一定的间隔内多次调用一个函数,只有最后一次才生效 例如,我设定的间隔为1秒,那么只要我在1秒内触发了第二次,那么就重新计时 废话不多说,贴代码 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859package com.ruben;import com.ruben.utils.TimeUtil;import java.util.Timer;import java.util.TimerTask;import java.util.logging.Handler;import java.util.logging.LogRecord;/** * @ClassName: TimeIsExpensiveDemo * @Date: 2020/9/28 21:3...
2024-04-23
satoken+webflux获取header以及body问题
自伟大的心灵,而是小人的伎俩。——巴尔扎克 之前分享过一个# satoken+webflux获取header以及body 今天遇到BUG了 需要在filter方法结尾添加一个switchIfEmpty(chain.filter(exchange)) 否则会导致有一些没有传入body的请求没有调用到filter方法导致无响应结果 完整代码: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677import cn.dev33.satoken.context.SaHolder;import cn.dev33.satoken.context.SaTokenContextForThreadLocalStorage;import cn.dev33.satoken.reactor.context.SaReactorSyncHolder;import cn....
2024-08-08
halo创建博客站点
不要忘记人生是要战斗到死。——芥川龙之介 快速运行: 1docker run -d --name halo -p 8090:8090 -v ~/.halo2:/root/.halo2 halohub/halo:2.18 在线体验 环境地址:https://demo.halo.run 后台地址:https://demo.halo.run/console 用户名:demo 密码:P@ssw0rd123.. 这个主要是需要自己的服务器,功能还可以,能快速满足一个博客、个人知识库的需求 github地址: https://github.com/halo-dev/halo 官方文档: https://www.halo.run/ 其还提供了很多主题和插件: 应用市场 - Halo - 强大易用的开源建站工具 我们这里如果是博客 应用市场 - Halo - 强大易用的开源建站工具

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog