以下问题是什么?如何使用OO原理更好地实现它?

我的应用程序包含一堆形状类,它们都继承自Shape-CircleRectangleTriangle等。其中一些需要显示在屏幕上,在这种情况下,它们需要利用通用屏幕逻辑,因此有一个ScreenShape超类,其中包含公共逻辑以及ScreenCircleScreenTriangle子类。

最佳答案

我建议创建一个Shape界面,以提供有关几何形状形状的基本蓝图,并且您所有的类都实现形状接口,并创建一个单独的类ScreenShape(或抽象类),所有类都将对其进行扩展并提供ScreenShape类中在屏幕上显示的方法。例如您的矩形类将像这样

class rectangle extends ScreenShape implements Shape
{

// provide implementation of Shape interace methods.


// over-ride ScreenShape methods

public void draw()
{
// actual logic of drawing the objects on screen

}

}

08-27 15:12