搜索了很多文章都说需要newInstance进行实例化,但抽象的类进行实例化肯定是有问题的

所以这里的实现相对更好。如有问题欢迎大家留言指正

import java.lang.reflect.Field;

public class Shapes {

static void printClassTree(Class> o) {

//基类Object

if (o == Object.class) {

P.println("Object");

return;

}

printClassTree(o.getSuperclass());

//继承的类

P.print(o.getSimpleName());

//实现的接口

if (o.getInterfaces().length > 0) P.print("实现的接口: ");

for (Class face : o.getInterfaces()) {

P.print(face.getSimpleName() + " ");

}

//域

if (o.getDeclaredFields().length > 0) P.print("定义的域:");

for (Field field : o.getDeclaredFields()) {

P.print(field.getName() + " ");

}

P.println();

}

public static void main(String[] args) {

printClassTree(Rhomboid.class);

}

}

interface Color {

void paint();

}

abstract class Shape implements Color {

static String signClass;

void draw() {

P.println(this + ".draw()");

}

void rotate() {

if (this instanceof Circle) {

return;

}

P.println(this.getClass());

}

public void paint() {}

abstract public String toString();

}

class Rhomboid extends Shape {

public String toString() {

return "Rhomboi";

}

}

//结果

Object

Shape实现的接口: Color 定义的域:signClass

Rhomboid

其中用到的工具类

public class P {

public static void print(Object s) {

System.out.print(s);

}

public static void println(Object s) {

System.out.println(s);

}

}

java抽象类的字段_java打印出继承体系的类(包括抽象类)、接口、域字段相关推荐

  1. java打印出继承体系的类(包括抽象类)、接口、域字段

    搜索了很多文章都说需要newInstance进行实例化,但抽象的类进行实例化肯定是有问题的 所以这里的实现相对更好.如有问题欢迎大家留言指正 import java.lang.reflect.Fiel ...

  2. 抽象类试验。定义一组具有继承关系的类。Shape(形状)类是一个抽象类,包含4个数据成员(坐标x,y,颜色c,图形对象g(Graphics类对象))

    package Test5_1_zxj; import javax.swing.*; import java.awt.*; public abstract class Shape {// 抽象类试验. ...

  3. java打印菱形图案_java打印出菱形图案实例详解

    第一步:首先对图像进行解析 想要打印该图形必须要进行多层循环嵌套,分两个部分进行打印. 第一部分为上半部分前四行,他们是递增的关系,后半部分后三行为递减关系,由此可以得出我们需要写两个打的循环.并且由 ...

  4. 打印菱形图案用java如何做_Java打印出菱形图案

    Java打印出菱形图案 题目:打印出如下图案(菱形) * *** ****** ******** ****** *** * 程序分析:先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重 ...

  5. java打印出所有的水仙花数_Java打印出所有的"水仙花数"

    Java打印出所有的"水仙花数" 题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个 &q ...

  6. java打印出所有的水仙花数_Java打印出所有的水仙花数的实现代码

    题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个 "水仙花数 ",因 ...

  7. java输出五行菱形_Java打印一个菱形

    打印出如下图案 (行数为奇数n的菱形) * *** ***** ******* ***** *** * 代码: public static void main(String[] args) { int ...

  8. java输出各种图案_Java打印各种小图形,各种三角形、菱形

    用java打印各种三角形,这是二重循环的引用,有外层循环(控制行数).内层循环(控制每行具体*的个数).想要打印各种三角形,关键在于准确找出外层与内层的关系.假如外层循环用i表示,内层用j表示,也是说 ...

  9. java在控制台用星号打印出圆形

    public class Yuan { public static void main(String[] args) { prinf(30); } //r圆的半径 public static void ...

最新文章

  1. colorAccent,colorPrimary,colorPrimaryDark 作用的地方
  2. 开发日记-20190425 关键词 gradle基础学习 7年之约 启动篇
  3. Handler消息处理机制
  4. mysql range用法_MySQL的常用函数
  5. 第一周作业--软件过程与项目管理
  6. python性能测试方法_Python实现测试磁盘性能的方法
  7. 古诗-豪放派和婉约派
  8. linux批量安装 五大开源软件挨个看,51CTO_Linux运维和管理:自动化监测.pdf
  9. 数据挖掘肿瘤预测_Nature Medicine封面文章:利用单核细胞数量预测及评估肿瘤免疫治疗效果...
  10. 小程序开发语言python_小程序是用什么语言开发的?5种最佳语言分享
  11. 让TFS忽略packages文件夹的更改
  12. redis缓存(jedis), 链接,存,取,String,map,对象
  13. 机器学习(1)PLA
  14. D3 BarChart
  15. 软件过程评估和软件能力评价之间的差异
  16. 使用gdb调试当前运行的程序
  17. 网易2016游戏技术岗在线编程题(二)
  18. 如何避免贫穷和忙碌,在2018年你需要这样提升自己
  19. 067 Pytohn文件的两种用途
  20. echarts柱状图铺满_echarts 柱状图多种样式设置

热门文章

  1. oreo另一个意思_other和another区别:两种不同的“另一个”
  2. spring cloud微服务分布式云架构-Spring Cloud 分布式的五大重点
  3. [翻译]Hystrix wiki–How it Works
  4. cisco路由器基本实验之六 CHAP and RIP (Boson NetSim)
  5. 【李宏毅2020 ML/DL】P106 More about Life Long Learning
  6. ECshop sina
  7. java基本数据类型填空题_java基本数据类型练习题
  8. MAN PAGE: cvslock(1)
  9. 工具库用久了,你还会原生操作 Cookie 吗?
  10. no python application found_为什么我会得到“uWSGI Error Python application not found”?