2016-05-21 37 views
-7

在我的Java程序中,用户可以在屏幕上选择多个对象。当选择一个时,我想用刚刚选择的对象更新一个变量。但是,这些对象是不同类的实例,所以我该怎么做?一个变量中的多种类型Java

+1

如何使用Object类?或者更好的是,创建你自己的超类,所有这些对象可以在逻辑上扩展。 –

+0

@PCLuddite接口将比超类(和对象)更好。 – Andreas

+0

@Andreas真的,这可能是一个更好的选择,具体取决于他的代码的实际布局,但由于操作系统没有提供任何代码,我认为你很难在两种实现之间找到明显的区别,并且归结为一个意见问题。 –

回答

1

也许你可以使用“对象”实例,因为每个类以某种方式继承了对象类。当你使用它时,你可以使用类型转换来取回原始实例。

3

创建一个接口,该接口表示所有对象共有的内容,以及您想要访问的对象的方法签名。

然后创建实现该接口的单个​​对象。

如果您需要访问原始对象的子类,则可以使用instanceof运算符来检查对象是否属于特定的子类,然后适当地对其进行类型转换。

+0

使用接口的目的是不需要'instanceof'。 – Andreas

+0

对大多数方法的使用都是正确的,但可能需要区分它们。在OP的用例中,他将执行updateVariable(InterfaceClass),但如果后来他想知道该变量是哪个类,他将能够检查。 –