Java 什么是不可修改的类异常?
我最近编写了一些代码,编译器抛出了一个Java 什么是不可修改的类异常?,java,Java,我最近编写了一些代码,编译器抛出了一个java.lang.UnmodifiableClassException,如果有人能解释它是什么,如何修复它,如果有工具可以找到,那将不胜感激。java.lang.instrument.UnmodifiableClassException来自JavaDoc的描述: 由when的实现引发 无法修改其中一个指定的类 所以,如果您试图重新定义禁止重新定义的类,您将得到此异常java.lang.instrument.UnmodifiableClassExceptio
java.lang.UnmodifiableClassException
,如果有人能解释它是什么,如何修复它,如果有工具可以找到,那将不胜感激。java.lang.instrument.UnmodifiableClassException
来自JavaDoc的描述:
由when的实现引发
无法修改其中一个指定的类
所以,如果您试图重新定义禁止重新定义的类,您将得到此异常java.lang.instrument.UnmodifiableClassException
有关JavaDoc中方法的信息:
如果无法修改指定的类,则引发不可修改的类异常
(isModifiableClass(java.lang.Class
)将返回false)
有关JavaDoc中方法的信息:
确定类是否可以通过重新传输或
重新定义。如果类是可修改的,则此方法返回true。
如果类不可修改,则此方法返回false。暂时
要重新转换的类,isRetransformClassesSupported()
还必须
是真的。但是的值isRetransformClassesSupported()
没有
影响此函数返回的值。让一个班级
重新定义时,isRedefineClassesSupported()
也必须为true。但是
isRedeFineClasseSupported()
的值不影响该值
由该函数返回
基本类(例如,java.lang.Integer.TYPE
)和数组
类永远不可修改
编译器不会抛出异常。它会生成编译错误。异常在运行时抛出。此外,没有
java.lang.UnmodifiableClassException
。你的意思是?编译器可能会出现故障并抛出那个,但如果没有更多的信息,我们真的不能说。基本信息在Javadocs中。这如何适用于您的用例?我们一点线索也没有。。。因为你没有费心去恰当地描述它,我在运行Java7。我更新到Java8,它改变了错误,并使用您给我的信息来编译和运行它。非常感谢你的帮助!