好的,最近我用 Java 编写了一个“绘画应用程序”。类似于 MS Windows Paint 的小程序,显然(根据一些评估我的源代码的人)我没有在我的应用程序中正确使用类。不幸的是,我不知道可能出了什么问题,但没有人愿意告诉我什么是不正确的。
我有使用继承思想的“正确”类:
PaintObject
-ClosedObject
--RectangleShape
--OvalShape
-OpenObject
--PointShape
--LineShape
但我仍然不知道代码中可能有什么问题,什么可能导致认为类没有正确使用......
唯一(在我看来)可能是错误的事实是,我通过创建新对象进行绘制,例如:new RectagleObject(...)
而new OvalShape(...)
不是创建一个字段objectToBeDrawn
变量(可能是一种PaintObject
类型),然后在调用该方法时为其分配适当的形状executeOperation
(显然连同那个特定形状的绘图)
这是代码示例:
public void executeOperation(Graphics2D gr, int oper, boolean drawingMode){
if(oper==1){
new RectangleShape(startLocation, endLocation, borderColor, fillColor).draw(gr);
}
else if(oper==2){
new OvalShape(startLocation, endLocation, borderColor, fillColor).draw(gr);
}
....//more operations
}
任何人都知道一般编程习惯可能有什么问题(除非我的“猜测”是正确的? - 如果是,请确认我的疑问)。或者也许还有别的东西?(跳过部分,oper==1
因为我知道这些值应该定义为常量)
非常感谢任何帮助,我自己学习,并且很难猜测专业程序是如何设计的(并遵循他们的模式),因为我的经验是“有限的”(实际上没有)。