我自己写的class不论怎么混淆都可以被反编译工具弄出来
但是我发现 jdk1.5 里面的jar就不能反编译,比如dt.jar\swing\BoxBeanInfo.class 我用小颖一搞就cup100%根本无法反编译,不知道它是用什么处理的?好厉害!

解决方案 »

  1.   

    只是你使用的反编译工具有问题罢了,我的非常快就反编译成功了public class BoxBeanInfo extends SwingBeanInfoBase
    {            public BoxBeanInfo()
                {
                }            public BeanDescriptor getBeanDescriptor()
                {
    /*  43*/        return BeanInfoUtils.createBeanDescriptor(classBox, new Object[] {
    /*  43*/            "preferred", Boolean.TRUE, "shortDescription", "Box"
                    });
                }            private PropertyDescriptor createPropertyDescriptor(String s, Object aobj[])
                {
    /*  64*/        return BeanInfoUtils.createPropertyDescriptor(classBox, s, aobj);
                }            public PropertyDescriptor[] getPropertyDescriptors()
                {
    /*  78*/        return (new PropertyDescriptor[] {
    /*  78*/            createPropertyDescriptor("accessibleContext", new Object[] {
    /*  78*/                "shortDescription", "accessibleContext"
                        })
                    });
                }            public Image getIcon(int i)
                {
    /*  94*/        switch(i)
                    {
    /*  96*/        case 2: // '\002'
    /*  96*/            Image image = loadImage("beaninfo/images/BoxColor32.gif");
    /*  97*/            return image != null ? image : loadImage("beaninfo/images/JComponentColor32.gif");/*  99*/        case 1: // '\001'
    /*  99*/            Image image1 = loadImage("beaninfo/images/BoxColor16.gif");
    /* 100*/            return image1 != null ? image1 : loadImage("beaninfo/images/JComponentColor16.gif");/* 102*/        case 4: // '\004'
    /* 102*/            Image image2 = loadImage("beaninfo/images/BoxMono32.gif");
    /* 103*/            return image2 != null ? image2 : loadImage("beaninfo/images/JComponentMono32.gif");/* 105*/        case 3: // '\003'
    /* 105*/            Image image3 = loadImage("beaninfo/images/BoxMono16.gif");
    /* 106*/            return image3 != null ? image3 : loadImage("beaninfo/images/JComponentMono16.gif");
                    }
    /* 108*/        return super.getIcon(i);
                }            private static final Class classBox = javax/swing/Box;}