Java 如何克服“禁止的包名”例外?
是否可以关闭/覆盖Java 如何克服“禁止的包名”例外?,java,securityexception,Java,Securityexception,是否可以关闭/覆盖java.lang.SecurityException:禁止的包名 我需要扩展AffineTransform类,该类在实现时缺少一些功能,我需要访问定义为包保护的成员m00、m01、。不,您不能。它是在java.lang.ClassLoader中硬编码的: if ((name != null) && name.startsWith("java.")) { throw new SecurityException ("
java.lang.SecurityException:禁止的包名
我需要扩展AffineTransform类,该类在实现时缺少一些功能,我需要访问定义为包保护的成员
m00、m01、
。不,您不能。它是在java.lang.ClassLoader中硬编码的:
if ((name != null) && name.startsWith("java.")) {
throw new SecurityException
("Prohibited package name: " +
name.substring(0, name.lastIndexOf('.')));
如您所见,没有选项您可以使用读取值。没有相应的
setMatrix
,但有构造函数
出于好奇,您所指的“功能缺失”是什么
更新:
啊,好的。Java2D实际上只是用于基本的2D转换。对于任何涉及深度的内容,您可能需要查看一些Java/OpenGL绑定
- -Java Open GL绑定()
- -轻量级Java游戏库
- -来自Sun的原始3d api
- 渲染到
buffereImage
- 从中创建一个
NullOpImage
PerspectiveTransform
- 并提取最终的
buffereImage
但是,请注意,由于这会引入潜在的安全漏洞,因此无法对小程序进行这两种操作。我指的是有理线性变换(包括透视变换)。我从
JAI
中获取了PerspectiveTransform
,并使其扩展仿射变换
,以便在标准PathIterator
中编写更广泛的变换。谢谢!但我要的是2D。此外,我还想与AWT结合使用,因为我使用的Piccolo2D
库也与AWT结合在一起。