All pastes #798404 Raw Edit

Mine

public text v1 · immutable
#798404 ·published 2007-11-26 20:05 UTC
rendered paste body
/*
 *Stuff by Hyjall
 */
 
import java.util.*;
import java.lang.reflect.*;
 
 public class Reflection {
 	
 	public static void main(String[] args) {
 		
 		try
 		{
 			Scanner myScanner = new Scanner(System.in);
 			System.out.println("Input a class for example java.lang.reflect:");
 			String s = myScanner.nextLine();
 
 			Class c1 = Class.forName(s);
 			
 			if(s != null) {
 				System.out.println(c1);
 				System.out.println();
 				printFields(c1);
 				System.out.println();
 				printMethods(c1);
 				System.out.println();
 				printConstructors(c1);
 			}
 		}
 		catch(Exception e) 
 		{
 			e.printStackTrace();
 		}
 		

 	}
 	
 	public static void printFields(Class c1) {
 		
 		Field[] fields = c1.getDeclaredFields();
  		
  		System.out.println("FIELDS");
  		System.out.println();		
 		
 		for(Field f: fields) {
 			
 			String name = f.getName();
 			Class type = f.getType();
 			
 			System.out.print("* " + Modifier.toString(f.getModifiers()) + " ");
 			System.out.println(type.getName() + " " + name);
 			
 		}
 	}
 		
 	public static void printMethods(Class c1) {
 		
 		Method[] methods = c1.getDeclaredMethods();
 		
 		System.out.println("METHODS");
 		System.out.println();
 		
 		for(Method m: methods) {
 			String name = m.getName();
 			int modifier = m.getModifiers();
 			Class returnType = m.getReturnType();
 			Class[] paramType = m.getParameterTypes();
 			
 			System.out.print("* " + Modifier.toString(modifier) + " " + returnType.getName() + " " + name + "(");
 			
 			for(int c = 0; c < paramType.length; c++) {
 				
 				if(c > 0) System.out.print(", ");
 				System.out.print(paramType[c].getName());
 			}
 				System.out.println(");");
 				
 		}
 		
 	}
 	
 	public static void printConstructors(Class c1) {
 		
 		Constructor[] constructors = c1.getDeclaredConstructors();
 		
 		System.out.println("CONSTRUCTORS");
 		System.out.println();
 		
 		for(Constructor c: constructors) {
 			String name = c.getName();
 			Class[] paramType = c.getParameterTypes();
 			
 			System.out.print("* " + name + "(");
 			
 			for (int e = 0; e < paramType.length; e++) {
 				
 				if(e > 0) System.out.print(", ");
 				System.out.print(paramType[e].getName());
 			}
 			System.out.println(");");
 			
 		}
 		
 	}
 		
 }
 
 class Testing {
 	int field1;
 	int field2;
 	String name;
 	String adress;
 	
 	Testing(String name, String adress) {
 		this.name = name;
 		this.adress = adress;
 	}
 	
 	
 	public void aMethod(int lol1, int lol2) {
 		
 	}
 		
 }