Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将HTML5标记属性添加到javax.swing.text.html.html.Attribute_Java_Html_Swing - Fatal编程技术网

如何将HTML5标记属性添加到javax.swing.text.html.html.Attribute

如何将HTML5标记属性添加到javax.swing.text.html.html.Attribute,java,html,swing,Java,Html,Swing,我正在使用HTML5中的新多媒体标签(视频、音频、源和曲目)。这些标记具有HTML5之前不存在的新属性,并且不包含在javax.swing.text.HTML的HTML.Attribute类中,例如media、srclang和kind。由于HTML.Attribute定义为“公共静态最终类”,因此无法“扩展”该类以添加新值 我找到了一个类com.inet.html.css.html.Attribute,它似乎完全符合我的要求(并添加了“media”属性),但我无法理解它们是如何扩展超类java.

我正在使用HTML5中的新多媒体标签(视频、音频、源和曲目)。这些标记具有HTML5之前不存在的新属性,并且不包含在javax.swing.text.HTML的
HTML.Attribute
类中,例如media、srclang和kind。由于
HTML.Attribute
定义为“公共静态最终类”,因此无法“扩展”该类以添加新值

我找到了一个类
com.inet.html.css.html.Attribute
,它似乎完全符合我的要求(并添加了“media”属性),但我无法理解它们是如何扩展超类java.lang.Enum的


有什么想法吗?

嗯,你可以复制粘贴源代码并对其进行修改。我不确定在哪里可以找到javax.swing.text.html.html.Attribute或com.inet.html.css.html.Attribute的源代码。除此之外,我还想以一种方式实现它,使它能够自动将将来的更改合并到javax.swing中。换句话说,我看到我重写了valueOf和toString等方法,首先调用超类来获取当前的规范定义,然后故障转移到本地定义。您可以通过下载JDK(它包含JRE、源代码和其他开发工具)来获取标准Java库的源代码。还提供了源代码以及。至于解决方案,您不能以任何方式扩展类,但您可以使用最终类的相同成员编写自己的类(您可以使用反射),并像调用
super
一样调用它们-这是一个包装类。因为您提到了“media”标记,它在源代码中被奇怪地称为
static final
,而其余的属性是
public static final
。不知道为什么,这看起来是个错误。另外,通过查看Intel的JWebEngine,他们似乎手动编辑了它。它们可以扩展
java.lang.Enum
,因为它的
公共抽象类