package com.itjob.test4;
import java.util.Scanner;
public class ShowSuperclass {
/**
* 编写一个程序,从控制台输入某个类的全额限定名时,
* 能自动生成该类的一个对象,
* 并且打印出该类的所有父类和接口的类名。
*/
int k = 0;
static String[] temp = new String[10];
public static void main(String[] args) throws ClassNotFoundException {
Scanner sc = new Scanner(System.in);
System.out.println("请输入全额类名: ");
String input = sc.nextLine();
String str = "";
Class name = Class.forName(input);
new ShowSuperclass().listSuper(Class.forName(input));
//将数组里的对象排列出来,从后往前排
for(int j=temp.length -1; j>=0; j--) {
if(temp[j] != null) {
System.out.println(str + temp[j]);
str += " ";
}
}
}
public void listSuper(Class c) {
//所有的类的名字放在一个数组中
temp[k++] = c.getName();
if(c.getName() != "java.lang.Object"){
Class c1 = c.getSuperclass();
listSuper(c1);
} else
return;
}
}