使用类对象作为泛型类型

2024-03-18

我不太确定如何问这个问题,这也是我不确定标题等的原因。开始。

假设你有一个对象Foo foo = new Foo()。是否可以编写类似的代码new ArrayList<foo.getClass()>(),在运行时相当于new ArrayList<Foo>()?

另一个但相关的问题是:假设该类Foo延伸Exception。那么是否可以写类似的东西

try{
    // ...
} catch(foo.getClass() e) {
    //
}

这将转化为

try{
    // ...
} catch(Foo e) {
    //
}

?

这样做是否会很可怕并不是重要的部分。不过,无论如何,我还是想听听合格的意见。


不,这在 Java 语言规范中是不可能的。泛型参数纯粹是一种编译时类型安全机制,因此在运行时定义它们是没有意义的。

代码中的类文字不能与Class<T>对象,由于它们本质上不同的角色。后者仅在运行时有意义,并且可以动态变化。

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

使用类对象作为泛型类型 的相关文章

随机推荐

  • 我应该如何处理 Perl 中不再使用的对象?

    我正在编写一个链接到外部资源的类 其中一种方法是破坏外部资源的删除方法 不应对该对象进行进一步的方法调用 我正在考虑设置一个标志 如果设置了标志 那么就会在所有方法中死亡 但是有没有更好 更简单的方法呢 也许涉及破坏 到目前为止 我真的很喜
  • Android Studio:“libpng 警告:iCCP:无法识别已编辑的已知 sRGB 配置文件”

    我花了几个小时试图解决这个问题 app mergeDebugResources AAPT err 927129865 C Users Will AndroidStudioProjects Splitter2 app build interm
  • 从两个绝对路径获取相对路径

    我有两个绝对文件系统路径 A 和 B 并且我想生成第三个文件系统路径来表示 A 相对于 B 使用案例 管理播放列表的媒体播放器 用户将文件添加到播放列表 新文件路径已添加到播放列表相对于播放列表路径 将来 整个音乐目录 包括播放列表 都会转
  • ANGULAR 2 - 组件共享数据服务

    这真的让我很头疼 我有一个不错的小应用程序 使用 Firebase 和 Angular 2 设置社交登录 一切都应该是实时的 基本上 当用户通过 Facebook 登录时 我希望将他们的个人信息传递到服务并存储为 Observable 并立
  • 如何在Python中的一个图形上绘制多个kdeplot

    我有以下数据 name val G Kittle 4 0 G Kittle 10 0 D Hopkins 3 0 L Fitzgerald 6 0 C Kupp 18 0 R Woods 21 0 N Harry 7 0 S Michel
  • Angular:创建 Angular 项目时出现新错误

    我使用时遇到此错误ng 新项目名称 发现无效的配置文件 angular json 请在运行命令之前删除该文件 我收到此错误 我不知道如何获得解决方案 我卸载了 angular cli 并再次安装 npm clean 缓存也不起作用 我不知道
  • 持续监听TCP端口

    我编写了一个能够通过 TCP 协议从端口接收数据的代码 我每 15 分钟从 ESP8266 接收一次数据 然后 ESP 进入深度睡眠模式 如何改变它才能使其持续工作 我想在 while 循环中创建一个新连接 但它不起作用 My code i
  • 如何在调用任何 url 时提供 ntlm 身份验证?

    我有一个使用 ntlm Windows 集成身份验证 进行身份验证的托管 URL 我在 windows 上使用 java 1 8 URL url new URL someUrl HttpURLConnection con HttpURLCo
  • 如果小程序在浏览器的 JRE 中运行,为什么机器上还需要 JRE?

    Applet 在浏览器的 JRE 中运行 这是否意味着您不必在计算机上安装 JRE 即可运行小程序 浏览器的 JVM is您计算机上安装的 JRE 浏览器通常不会附带自己的浏览器 它们只是使用您系统上已安装的任何浏览器 也许您混淆了 Jav
  • Angular 9 SSR 404 未找到带有状态代码的页面

    我正在使用 Angular 9 和 SSR 现在正在尝试获取 404 页面 它与客户端成功合作 但状态始终为 200 Ok 当我尝试使用 Angular ssr 时 它也显示 200 是状态代码 我的 Angular 路由器已成功传递到 4
  • 如何在Pycharm中暂停程序执行(暂停按钮不起作用)?

    在 Pycharm 5 0 4 中调试我的 Python 3 5 程序时 我试图按下暂停按钮来查找程序挂起的原因 位置 可以在 Visual Studio 中完成 但是 什么也没有发生 暂停按钮不会变成灰色 恢复按钮保持灰色 并且在调试器工
  • 来自 Kafka Producer 的控制台消息过多

    如何控制 Kafka 生产者或消费者的控制台日志记录级别 我在 Scala 中使用 Kafka 0 9 API 每次send on the KafkaProducer被调用时 控制台给出如下输出 这是否表明我没有KafkaProducer设
  • 未报告的异常 java.lang.Exception [重复]

    这个问题在这里已经有答案了 未报告的异常 java lang Exception 必须捕获或声明为抛出 为什么会出现这个问题呢 有什么简单的方法可以帮助解决这个问题吗 我在我的java中应用这个代码 public byte encrypt
  • 类的友元声明中定义的函数名称是否具有链接?

    class A friend void fun 1 根据 dcl meaning general p2 如果声明是友元声明 声明者不bind a name basic link 指出仅names可以有一个链接 当一个名称可以表示与另一个作
  • 确定输入流的大小

    我目前的情况是 我必须读取一个文件并将内容放入InputStream 之后我需要将内容InputStream到一个字节数组中 它需要 据我所知 的大小InputStream 有任何想法吗 根据要求 我将显示我从上传的文件创建的输入流 Inp
  • 我无法将父目录添加到 Git 中的 *safe.directory*

    将 Git 更新为v2 35 2 windows 1我收到以下错误 致命 不安全的存储库 F GitHub my project 由其他人拥有 要为此目录添加例外 请调用 git config global add safe directo
  • 如何确定矩阵的所有给定坐标都是相连的?

    给定一个网格 我如何确定网格的元素是否都在单个区域中 在下面的情况下是正确的 因为矩阵中的每个元素都有一个邻居 示例1 gridneighbours 1 1 1 2 1 3 2 1 2 2 2 3 3 1 4 1 4 2 true 然而在我
  • 无法将类型“System.__ComObject”的 COM 对象转换为接口类型“Microsoft.SqlServer.Dts.Runtime.Wrapper.Sql2019.IDTSApplication160”

    我将 SSIS 与 Visual Studio 2019 结合使用 在 SQL Server 2019 上创建和部署包 最初 当我的包在 SSDT 上运行时 我将其部署在 SSMS 集成服务器上 但没有输出 所以 我检查了 Visual S
  • 如何获得剧作家的元素集合?

    如何用剧作家获取页面上的所有图像 我只能得到一个 ElementHandle 具有以下代码 但不是集合 const chromium require playwright class Parser async parse url const
  • 使用类对象作为泛型类型

    我不太确定如何问这个问题 这也是我不确定标题等的原因 开始 假设你有一个对象Foo foo new Foo 是否可以编写类似的代码new ArrayList