心有多大舞台便有多大

Embrace changes, pursue excellence, share niceness.

今天看jdk包里的Class的源代码,不知道isSynthetic()是做什么用的

这个方法在class是什么类型的时候返回true呢?有什么用呢?不知道哪位大虾可以告知小弟,万分感谢!
参考连接:http://www.sagewire.org/java-programmer/isSynthetic-185494.aspx

posted on 2008-03-26 10:35 pony 阅读(3666) 评论(3)  编辑  收藏 所属分类: Java

评论

# re: 今天看jdk包里的Class的源代码,不知道isSynthetic()是做什么用的 2008-03-26 12:28 piggytommy

当且仅当该类为复合类时才返回 true  回复  更多评论   

# re: 今天看jdk包里的Class的源代码,不知道isSynthetic()是做什么用的 2009-05-10 11:41 wannamastjava

package test.base.cl;
import java.lang.reflect.Modifier;
/**
*
* @author wulingwudong
*/
public class SyntheticClass {
private static class Inner {
}
public static void main(String[] args) {
new Inner();
// checkSynthetic("test.base.cl.SyntheticClass");
// checkSynthetic("test.base.cl.SyntheticClass$Inner");
// checkSynthetic("test.base.cl.SyntheticClass$1");
Class[] c = SyntheticClass.class.getDeclaredClasses();
for(int i = 0;i < c.length;i++){
System.out.println(Modifier.toString(c[i].getModifiers())+" "+c[i].getName()+" ,synthetic:"+c[i].isSynthetic() );

}


}
static void checkSynthetic(String name) {
try {
Class c = Class.forName(name);
System.out.println(name + " " + c.isSynthetic() + " ");
} catch (ClassNotFoundException exc) {
exc.printStackTrace(System.out);
}
}
}
  回复  更多评论   

# re: 今天看jdk包里的Class的源代码,不知道isSynthetic()是做什么用的 2009-05-10 11:42 wannamastjava

这个产生会在编译时产生一个isSynthetic()为true的类  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问