韩漫免费漫画在线观看方法,《好好疼爱里面》免费看,年轻漂亮的女士护士内衣,妈妈醉酒后把我当爸爸电视剧

文章 > java教程 > java如何重写findClass方法

java如何重写findClass方法

java findClass

头像

小妮浅浅

2021-07-27 09:19:336782浏览 · 0收藏 · 0评论

方法说明

1、使用findClass(String)方法,可以重新加载class字节码文件,因为在ClassLoader中,ffindClass方法由protected修饰,只能调用被子类,没有实现方法,只抛出一个ClassNotFoundException的异常。

2、重写findClass的方法,这样就可以被外部对象调用,并class字节码文件的逻辑代码。

实例

package com;
import java.io.InputStream;
import java.net.URL;
public class MyClassLoader extends ClassLoader{
    /**
     * 加载class文件
     * 重写此方法的目的是为了能让此方法被外部调用,父类的 findClass 是 protected 修饰的,只能被子类调用
     * @param name   类的全类名 示例: com.xd.User
     * @return
     * @throws ClassNotFoundException
     */
    @Override
    public Class<?> findClass(String name) throws ClassNotFoundException {
        try {
            // 获取class文件名称  去掉包路径
            String fileName = name.substring(name.lastIndexOf(".") + 1) + ".class";
            // 获取文件输入流
            InputStream is = this.getClass().getResourceAsStream(fileName);
            // 读取字节
            byte[] b = new byte[is.available()];
            is.read(b);
            // 将byte字节流解析成jvm能够识别的Class对象
            return defineClass(name, b, 0, b.length);
        } catch (Exception e) {
            throw new ClassNotFoundException();
        }
    }
}

以上就是java重写findClass方法的介绍,希望对大家有所帮助。更多Java学习指路:java教程

本教程操作环境:windows7系统、java10版,DELL G3电脑。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

亚洲乱熟女-区二区三区山口珠理| 闺蜜老公把我压在怀里| 找寂寞妇女| 人间水蜜桃MAC923| 可切换老司机模式浏览器| 下面的小嘴又饿了| 法国理伦片《粉嫩小娇乳小说| 初中小姐姐脚丫踩在男生困困| 台球室的特殊待遇2HD| 玛莉娜1984| 《女仆教育》动漫第一季| 15岁女初中生免费观看电视剧| 亚洲一区| 公厕被偷窃视频大全| 《黑寡妇3:满天星法版》| 女人尝试到更粗大的心理变化| 日批| 情满四合院演员表| 爱上兄弟的母亲6集免费观看 | 双人床上剧烈运动会怎么消除| 《火车服务》免费观看| 《漾出OVER FLOWER》…| 欧美电影免费观看电视剧大全| 天美麻花高清在线看电视剧 | 亲你私下的男人最有效的一句| 草原课文六年级上册| 精品免费国产一区二区三区四区| 绝色儿媳在线观看免费版电视剧| 日韩大片PPT免费PPT| 《瞒着丈夫说在公司加班》中字 | 戴上自安小玩具调到10档| 乖再分开点小说免费阅读| 蜜糖直播| 妈妈与儿子高清免费版电视剧 | 十二金鸭| 《大尺度吃奶做爰》电影| 美女热舞| 开会桌下把荫蒂添的好多水 | 一线产区和二线产区的标准图 | DK战队| 楼梯间的秘密小说BY赵景明