包含作为参数传递的对象的函数的设计难度

时间:2012-11-14 03:50:24

标签: java eclipse

所以我现在正在使用java中的一些编程练习,我正在使用的当前练习涉及使用acm.graphics库。基本形状和东西绘图。

我想要做的是创建一个具有GObject和Color对象参数的函数,并适当调用setFilled()和setColor(因为为每个形状对象重新输入这个是极其冗余的)。

我遇到的问题是这个,

GObject类是GRect,GOval,GLine等的超类,但实际上并不包含setFilled函数(因此在尝试参数标题时抛出错误,例如函数f(GOBject A,Color ArgC)。

那么我应该如何创建这个功能,或者甚至可以不编辑GObject的标准化库。我想我可以通过简单地在GObject中创建一个空的setFilled函数来处理这个错误,但从我的理解来看,进入标准化库并随意进行更改通常是一个坏主意,正确的方法是进行更改应该是扩展/过载根据需要从子类。无论如何,我的编译器陷入僵局,所以我愿意接受各种想法,谢谢。

P.S /不相关问题为什么“标题栏”中的“问题”一词被禁止?

1 个答案:

答案 0 :(得分:1)

将其写入GFillable接口,因为这是由您所追求的形状实现的。 http://jtf.acm.org/javadoc/complete/acm/graphics/GFillable.html