我需要获取在超类中实例化的对象的字段。问题是我需要从超类的两个级别的子类中获取它,也就是说,我在类SingleChart
中扩展SingleTable
,它本身扩展了TemplateReport
类。 TemplateReport
实例化private Report
对象。 Report
有公共吸气者和二传手。我想检索height
的{{1}}字段。
有没有办法直接从Report
到SingleChart
?
答案 0 :(得分:1)
私有实例变量由子类继承。
因此,如果TemplateReport生成一个Report对象,并且Report有getter和setter。您可以通过调用getter从任何子类获取Report对象,然后询问您需要的值。
答案 1 :(得分:0)
TemplateReport需要一个公共的getReport()方法,以便您可以从子类访问报表实例。如果您不想允许访问该实例,那么您可以使用允许访问的特定方法:
public int getReportHeight() {
return report.height;
}