微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何声明一个类字段,该类字段可以是超类的子类之一的对象

如何解决如何声明一个类字段,该类字段可以是超类的子类之一的对象

例如:

public class Building{
   private int x;
   private int y;
   private int z;
}
public class Office extends Building{
   public void fx()
   public void fy()
   public Office(int x,int y,int z){
      x = x;
      y = y;
      z = z;
   }
}
public class School extends Building{
   public void fa()
   public void fb()
   public School(int x,int z){
      x = x;
      y = y;
      z = z;
   }
}

那么我应该在下面的代码中空白之处来引用Building的子类吗? 换句话说,我应该在哪里放置建筑物,使其数据类型为Office或Building,其数据类型可以由构造函数确定?

public class foo{
   private int dummy;
   private ____ building;

   public foo(int nd,____ nb){
      dummy = nd;
      building = nb;
   }
}
public class mainF{
   public static void main(String[] args){
      foo object1 = new foo(1,new Office(1,2,3)); 
      foo obhect2 = new foo(1,new School(1,4)); 
   }
}

解决方法

如果Office和School是Building的实现,那么您可以将它们像Building对象一样处理。

也许您的问题没有完全揭露?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。