大致的原理
- 1.校驗我們的要實現(xiàn)的接口還有我們的invocationHandler
- 2.根據(jù)我們的接口生成字節(jié)數(shù)組,然后將該字節(jié)數(shù)組交給classloader底層的defindClass(native方法)生成一個新的class文件。
總結:就是生成一個class文件 該class文件中主要修改繼承的接口的地方,以及相應的常量池等等。
相應的CGLIB的原理也是類似,主要都是復制一個類的class文件(字節(jié)數(shù)組),然后修改一些屬性,比如class名稱等等。