在做作业。老师要求写一个泛型的class,其中一个构造器,判断输入的类型有没有应用cloneable接口,如果用了就做一个深度clone,如果没用做一个影子clone。
请问,如果判断输入的类型是不是应用了cloneable 接口??谢谢

解决方案 »

  1.   

        public static void main (String[] args) {
            Date d = new Date();
            isImplCloneable(d);
        }
        public static void isImplCloneable(Object o) {
            Class[] classes = o.getClass().getInterfaces();
            for(int i = 0;i < classes.length ; i++) {
                if(classes[i].getName().indexOf("Cloneable") != -1) {
                    System.out.println("This class is implements Cloneable");
                    break;
                }
            }
        }