我正在使用抽象方法GUIClickableObject
创建一个扩展GUIObject
类的抽象public void onClick()
类。当我创建一个扩展GUIClickableObject
的新子类时,我会根据Clickable对象的操作实例化抽象onClick()
方法。
我有鼠标的位置和对象的位置,所以我可以轻松找到它,但我需要创建一个搜索功能,搜索我的GUIClickable对象,然后在鼠标点击和释放时调用他们的onClick()
方法在对象上。
显然我不能只创建一个GUIClickableObjects的ArrayList并将我的子类插入其中,对吗?
答案 0 :(得分:0)
我认为你想要的是一个通用列表
List<? extends GUIClickableObjects> gcos = new ArrayList<? extends GUIClickableObject>();
现在您可以添加GUIClickableObject
的任何子类。
答案 1 :(得分:0)
显然我不能只创建一个GUIClickableObjects的ArrayList并将我的子类插入其中,对吗?
为什么会这样。你应该能够创建一个arraylist,它将接受子类的对象到GUIClickableObjects。如果你想专门检查属于哪个子类的对象你可以简单地做“实例”检查
How to check if a subclass is an instance of a class at runtime?
更多请详细说明您的想法或面貌。