java中基于超类和子类的泛型类型的多重限制

2023-12-28

我有一个实现特定接口的通用列表类。

接口中的列表项也实现相同的接口。

public abstract class List<T extends SomeInterface> implements SomeInterface
{
    protected LinkedList<T> m_list;

    ...
}

所以现在我想创建一个该列表的子类,该子类保持通用,但将项目限制为实现 SearchListItem 接口的对象:

public interface SearchListItem
{
    public String getName();
}

这是到目前为止我对 SearchList 类的了解:

public abstract class SearchList<T extends SearchListItem> extends List<T>
{
    public T get(String name)
    {
        ...
    }

    ...
}

但当然这会抱怨类的定义:

Bound mismatch: The type T is not a valid substitute for the bounded parameter <T extends SomeInterface> of the type List<T>

那么,我需要在类声明中放入什么来表示“SearchList 扩展了 List 类,并对包含 SomeInterface(在基类中)和 SearchListItem 的泛型类类型有附加限制”?

请告诉我是否可以重写此内容以帮助解释。


这有效吗?

public abstract class SearchList<T extends SomeInterface & SearchListItem> extends List<T>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java中基于超类和子类的泛型类型的多重限制 的相关文章

  • Lombok 如何将代码生成到现有类中? [复制]

    这个问题在这里已经有答案了 我可以使用注释处理器从头开始生成类 但我无法像 lombok 那样修改类 我在 android studio 中搜索了 lombok 生成的类 但是我什么也没找到 然后我通过他们的网站检查了龙目岛概述 还在论坛中
  • 多线程以原子方式对大量值求和

    我正在开发一个应用程序 其中有大量线程 并且必须自动添加 100 个值 我在用AtomicLong效果很好 但仍需要提高性能 有没有比 AtomicLong 提供更好性能的东西 您可以使用长加法器 https docs oracle com
  • Java无法读取字体

    好的 我在使用自定义字体时遇到问题 基本上我得到了从互联网上下载的自定义字体并在我的程序中使用它 当我在 Eclipse 我使用的编辑器 中运行该程序时 一切正常 没有问题 但是 每当我将它从 eclipse 导出到 jar 时 或者尝试从
  • 扩展 CrudRepository (Spring) 时是否需要 @Repository 注解?

    public interface CarRepository extends CrudRepository
  • Java(正则表达式)-获取句子中的所有单词

    我需要将 java 字符串拆分为单词数组 假设该字符串是 Hi I need to split this string into a serie s of words 目前我正在尝试使用这个String strs str split w 但
  • 使用 Hibernate/Spring 生成数据库更新脚本

    我有一个项目 我们过去依赖 hibernate 来更新数据库 hibernate hbm2ddl auto update 即使在产品上 我正在将其迁移为使用 liquibase 我唯一担心的是 并不是我的团队中的每个人都是 sql 专家 因
  • spring Kafka模型不在可信包中

    我正在研究微服务spring Kafka 2 1 5 and spring boot 2 0 5 第一个服务将向卡夫卡产生一些消息 第二个服务将消耗它们 在消耗时我遇到了问题 Caused by java lang IllegalArgum
  • 无法在 PHP 中接收 JSON POST 请求

    我正在将 JSON 对象从 Java 传递到 PHP 我正在使用 jdk 1 8 和 WAMPserver 下面是Java代码 import java io IOException import org apache http client
  • 获取 Spring Boot 中当前活动数据源的引用

    我想通过实现数据库数据初始化DataSourceInitializer 我将这些方法放在我的 Spring Boot 主方法下面 但似乎它根本没有被执行 我尝试故意删除字符只是为了触发一个错误来确认执行 什么也没有发生 Configurat
  • double 或 BigDecimal 会溢出吗?

    Java 8 给了我们Math addExact https docs oracle com javase 8 docs api java lang Math html addExact int int 适用于整数 但不适用于小数 是否有可
  • Apache HTTPClient SSLPeerUnverifiedException

    使用 Apache HttpClient 4 2 1 使用从基于表单的登录示例复制的代码 http hc apache org httpcomponents client ga examples html http hc apache or
  • Java 多态性中的字段如何工作? [复制]

    这个问题在这里已经有答案了 我正在读书面试问题 http javabypatel blogspot in 2016 04 java interview questions html关于java 发现了很好的例子 但感到困惑 因为没有很好 更
  • 识别包含本机方法实现的库文件/源

    如何识别包含本机方法实现的库文件 Ex public native String intern 我在哪里可以找到实施 source code of String intern 方法 找到了答案String intern 与快速谷歌搜索 ht
  • Java Reflection:为什么这么慢?

    我一直避免使用 Java 反射 因为它速度缓慢 我在当前项目的设计中达到了一个点 能够使用它将使我的代码更具可读性和优雅性 所以我决定尝试一下 我只是对这种差异感到惊讶 我注意到有时运行时间几乎延长了 100 倍 即使在这个简单的例子中 它
  • 菜单项标题未显示

    菜单项的标题未显示在片段内 我在菜单文件中有两个项目 第一个是带有图标和标签的showAsAction always在工具栏中显示图标 第二个只有标题 我不知道这里出了什么问题 菜单项的所有操作均有效 例如下面 菜单 销售 xml menu
  • JRuby调用了错误的方法

    我在调用 Java 方法时遇到了一个奇怪的问题JRuby http en wikipedia org wiki JRuby 在我的 Java 类中 这些方法定义了两次 看来 JRuby 调用了错误的方法 所以我尝试使用java method
  • Selenium - WebDriver.findElement() 和 WebElement.findElement() 之间的区别

    我正在使用WebElement findElement By cssSelector click 在页面上查找某个元素 但它返回了 Unable to locate element 但是当我使用WebDriver findElement B
  • 从java类文件获取apache webcontents文件夹的绝对路径[重复]

    这个问题在这里已经有答案了 需要在动态 Web 应用程序内获取 java 类文件中的绝对路径 实际上我需要获取 apache webapps 文件夹的路径 部署 webapps 的位置 e g apache root webapps my
  • 解决SecurityException:权限拒绝:启动意图。我需要什么许可?

    我想从应用程序打开游戏商店 在三星手机上还好 但在一加手机上却失败了 我不知道在哪里alibaba来自 真奇怪 异常 java lang SecurityException 权限拒绝 启动意图 act android intent acti
  • Java:当计时器处于活动状态时,JSplitPane 将顶部面板的内容复制到底部面板

    所以我有一个 JSplitPane 和两个 JPanel 一个在顶部 一个在底部 在这两个面板中 我重写了paintComponent方法并添加了我自己的图形 在底部面板中 我想添加动画 当面板不重新绘制时 这很好 但是一旦计时器 java

随机推荐

  • 通过两个模型来查看[重复]

    这个问题在这里已经有答案了 我是 mvc 新手 并尝试通过用它做一个小项目来学习它 我有一个页面应该显示特定日期的货币和天气 所以我应该通过货币模型和天气模型 我已经完成了通过货币模型并且工作正常 但我不知道如何通过第二个模型 大多数教程都
  • 为什么 python MSAL 身份验证卡在 ConfidentialClientApplication 处?

    我有这段 python 代码 它在我的计算机上完美运行 但当我在带有 Amazon Linux 的 EC2 上运行它时 它会卡在这个函数中 检查了所有网络和防火墙规则 一切正常 事实上 如果我从我的 PC 获取令牌并尝试通过 cURL 直接
  • 如何使用 prometheus Alertmanager 在工作时间之外抑制警报?

    我们的应用程序依赖于仅在工作时间内活跃的数据源 我们在普罗米修斯中设置了警报 以便在溪流干涸时通知我们 但是 我们不希望在工作时间之外收到 错误 警报 我跟着这个帖子 https medium com tom fawcett time of
  • 如何限制日志记录频率?

    任何日志库是否包含限制日志消息频率的方法 我的意思是假设我有一个等待循环并且它记录 没有完成 如何使下一条 未完成 消息仅在 1 秒后记录 我知道我可以自己编程 大多数日志记录库都支持过滤器来限制日志记录频率 请参阅此答案SLF4J 或 L
  • 如何使用 highcharts 将图表图像保存到服务器上?

    With highcharts you have a built in button to download the current chart example http www highcharts com demo http www h
  • 我可以更新 ProgressDialog 的字符串消息吗?

    我在 Android AsyncTak 中设置了一个进度对话框并且它可以工作 我的问题是可以在 AsyncTask 的 onProgressUpdate 方法中更新 ProgressDialog 显示的字符串 我想使用publishProg
  • wkhtmltopdf 自定义字体字母间距

    I m running wkhtmltopdf on linux server centos 10 x86 64 I m trying to add Times New Roman font to the page I see the fo
  • Vim 颜色太亮(终端)

    我的 Vim 和 iTerm2 有问题 颜色太亮 对于所有主题 它适用于 Terminal app 和 MacVim 所以我想这一定是我完全错过了 iTerm2 中的某些设置 The picture below shows you the
  • Dropzone 无法以编程方式在 div 内工作

    我遇到了 dropzone 问题 我试图将其包含在 div 中 但不起作用 起初我的js上没有 div dropzone 东西 并且没有出现错误 但是上传部分无法正常工作 这是因为我从未表明 dropzone 类位于 div 内 当我添加时
  • Elastic Search 地理空间搜索实现

    我试图了解 elasticsearch 如何在内部支持地理空间搜索 对于基本搜索 它使用倒排索引 但它如何与附加搜索条件 例如搜索特定半径内的特定文本 结合起来 我想了解如何存储和查询索引以支持这些查询的内部结构 文本查询和地理查询是分开执
  • gradle构建过程中的CSS Sprite生成?

    我最近读了一篇关于 Javascript 的文章 其中提到了像 Grunt 和 Ender 这样的构建工具 简要指出 此类工具能够从单独提供的文件生成精灵图像 并且这些构建工具可以集成到构建过程中 不幸的是我的谷歌搜索没有透露更多这方面的信
  • 无法在控制台应用程序 .NET Core 中使用 IOptions

    我有一个控制台应用程序 我正在其中构建配置 IConfiguration config new ConfigurationBuilder AddJsonFile appsettings json true true Build var se
  • 找不到socket.io.js [重复]

    这个问题在这里已经有答案了 可能的重复 找不到socket io js https stackoverflow com questions 10191048 socket io js not found 我正在使用最新版本的 Socket
  • get_class_vars() 未显示变量,但在同一类上运行的 property_exists() 返回 true

    我正在学习 PHP 并且已经开始使用类 下面可能是最基本的对象 哈哈
  • DFP 渲染后回调

    我需要触发一些 JavaScriptafterDFP 广告管理系统已完成页面上所有广告的呈现 或者至少在触发时完成折叠空Divs 隐藏不包含订单项的广告单元 有人知道如何让 DFP 广告管理系统在这些事件发生后触发回调吗 GPT API 现
  • 在新创建的团队中进行测试时,团队 UpdateActivity 事件有所不同

    我们有一个 Teams 机器人 可以在 MS Teams 中发布消息 新对话的第一个活动始终是一张自适应卡片 我们偶尔会用一张新卡片更新它 在我用这个机器人组建了一个新团队之前 这一切都很好 我们尝试使用 UpdateActivityAsy
  • 重新打开 SQL Server Management Studio 后恢复选项卡

    我不认为有一种方法可以模拟 FireFox 类型的设置 即如果我关闭 SQL Server Management Studio 2008 我打开的选项卡在重新启动时会再次出现 我知道我可以将各个窗口保存到 sql 文件中 但想知道是否有办法
  • 使用 setNextMediaPlayer 播放音频时出现问题

    我需要在循环之间没有间隙地播放音频 音频需要无限循环地播放 使用setNextMediaPlayer只合并两个音轨 无间隙 之后会自动停止播放音频 不会永远循环 提前致谢 mp1 MediaPlayer create getApplicat
  • 如何注释以允许使用 Hibernate Search 搜索 List 字段

    假设我有一个如下所示的域对象 Entity Indexed public class Thingie implements DomainObject private Long id private Integer version priva
  • java中基于超类和子类的泛型类型的多重限制

    我有一个实现特定接口的通用列表类 接口中的列表项也实现相同的接口 public abstract class List