public static void main(String[] args) {
   if (args.length < 1) {
     print(usage);
     System.exit(0);
   }
   int lines = 0;
   try {
     Class<?> c = Class.forName(args[0]);
     Method[] methods = c.getMethods();
     Constructor[] ctors = c.getConstructors();
     if (args.length == 1) {
       for (Method method : methods) print(p.matcher(method.toString()).replaceAll(""));
       for (Constructor ctor : ctors) print(p.matcher(ctor.toString()).replaceAll(""));
       lines = methods.length + ctors.length;
     } else {
       for (Method method : methods)
         if (method.toString().indexOf(args[1]) != -1) {
           print(p.matcher(method.toString()).replaceAll(""));
           lines++;
         }
       for (Constructor ctor : ctors)
         if (ctor.toString().indexOf(args[1]) != -1) {
           print(p.matcher(ctor.toString()).replaceAll(""));
           lines++;
         }
     }
   } catch (ClassNotFoundException e) {
     print("No such class: " + e);
   }
 }
 public ClassAsFactory(Class<T> kind) {
   try {
     x = kind.newInstance();
   } catch (Exception e) {
     throw new RuntimeException(e);
   }
 }
示例#3
0
 // Classtoken version:
 public static <T> void fill(Addable<T> addable, Class<? extends T> classToken, int size) {
   for (int i = 0; i < size; i++)
     try {
       addable.add(classToken.newInstance());
     } catch (Exception e) {
       throw new RuntimeException(e);
     }
 }
示例#4
0
 public static void perform(Object speaker) {
   Class<?> spkr = speaker.getClass();
   try {
     try {
       Method speak = spkr.getMethod("speak");
       speak.invoke(speaker);
     } catch (NoSuchMethodException e) {
       print(speaker + " cannot speak");
     }
     try {
       Method sit = spkr.getMethod("sit");
       sit.invoke(speaker);
     } catch (NoSuchMethodException e) {
       print(speaker + " cannot sit");
     }
   } catch (Exception e) {
     throw new RuntimeException(speaker.toString(), e);
   }
 }
示例#5
0
 public static void main(String[] args) {
   Class c = null;
   try {
     c = Class.forName("typeinfo.toys.FancyToy");
   } catch (ClassNotFoundException e) {
     print("Can't find FancyToy");
     System.exit(1);
   }
   printInfo(c);
   for (Class face : c.getInterfaces()) printInfo(face);
   Class up = c.getSuperclass();
   Object obj = null;
   try {
     // Requires default constructor in order to
     // create a super or Toy object:
     obj = up.newInstance();
   } catch (InstantiationException e) {
     print("Cannot instantiate");
     System.exit(1);
   } catch (IllegalAccessException i) {
     print("Cannot access");
     System.exit(1);
   }
   printInfo(obj.getClass());
 }
示例#6
0
 static void printInfo(Class cc) {
   print("Class name: " + cc.getName() + " is interface? [" + cc.isInterface() + "]");
   print("Simple name: " + cc.getSimpleName());
   print("Canonical name: " + cc.getCanonicalName());
 }