java.lang.ClassLoader は通常、私が拡張するクラスローダーであることを理解しています (必要な場合)。また、Tomcat のカスタム クラスローダーを見ると、Jetty などが java.lang.ClassLoader から拡張されています。
com.sun.org.apache.bcel.internal.util.ClassLoader の目的と使用法を理解したいと思っています。
誰かがそれを理解するのを手伝ってくれますか?
java.lang.ClassLoader は通常、私が拡張するクラスローダーであることを理解しています (必要な場合)。また、Tomcat のカスタム クラスローダーを見ると、Jetty などが java.lang.ClassLoader から拡張されています。
com.sun.org.apache.bcel.internal.util.ClassLoader の目的と使用法を理解したいと思っています。
誰かがそれを理解するのを手伝ってくれますか?
com.sun.org.apache.bcel.internal
Apache BCELの単なる再パッケージ化です。特に、関心のあるクラス ( ) はここClassLoader
に文書化されています ...
JVM の標準クラス ローダーの代わりにドロップします。と組み合わせて使用して、
JavaWrapper
要求に応じてクラスを動的に変更/作成できます。このクラスローダーは、特別なリクエストを異なる形式で認識します。つまり、リクエストされたクラスの名前に「$$BCEL$$
createClass()
」が含まれている場合、その名前のメソッドを呼び出します( $$BCEL$$より前のすべてが、パッケージ名. クラスローダーをサブクラス化し、そのメソッドをオーバーライドできます. 「通常の」クラスのクラスmodifyClass()
は、直前に呼び出されたメソッドをオーバーライドすることで変更できますdefineClass()
.