我是靠谱客的博主 发嗲菠萝,最近开发中收集的这篇文章主要介绍JEP 371:Java中的隐藏类,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

最新的JEP来自Valhalla项目团队,其目标是提供一个探索和孵化高级Java VM和语言功能候选者的场所。 它们的两个既定功能是“ 值对象”和“ 原始类型上的泛型” ,但它们还列出了“其他相关主题”,隐藏类必须属于这些主题。 因此,现在让我们仔细研究一下JEP对编程语言的意义。

JEP 371:隐藏的类

使用框架的Java开发人员知道这一点:在运行时动态创建的某些类比实际所需的可见性或寿命更长。 这是因为用于创建类的API, ClassLoader::defineClassLookup::defineClass ,对于区分该类的字节码是在运行时动态创建还是在编译时静态创建的,没有区别。 由于默认情况下将该类定义为“可见”,因此将相应地使用它。

还请参见:

适用于Java和JavaScript用户

添加“隐藏”类可以涵盖某些用例,而其他类则无法如此轻松地调用这些用例。 在JEP 371:隐藏类中 ,提到了一些此类可能的用例作为示例。 例如, java.lang.reflect.Proxy可以定义充当代理类的隐藏类。 顾名思义,这些将实现代理接口。 隐藏类也可以与java.lang.invoke-StringConcatFactory结合使用,以包含用于常量连接的方法。 在Java中使用JavaScript时,相应的引擎可以创建隐藏类,其中包含从JavaScript应用程序转换而来的字节码。

弃用

该JEP的目的不是以其他任何方式更改Java编程语言。 此外,提案的目标绝对不是支持sun.misc.Unsafe::defineAnonymousClass的全部功能。 相反,这可能对API来说是致命的:JEP所有者Mandy Chung建议将其标记为“不赞成使用”,并在以后的Java更新中将其删除。

有关JEP 371的更多信息以及有关隐藏类如何工作的详细信息,请参见JEP描述 。

翻译自: https://jaxenter.com/jep-371-hidden-classes-java-167829.html

最后

以上就是发嗲菠萝为你收集整理的JEP 371:Java中的隐藏类的全部内容,希望文章能够帮你解决JEP 371:Java中的隐藏类所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(33)

评论列表共有 0 条评论

立即
投稿
返回
顶部