10 likes | 134 Views
This document outlines an abstract class named `GraphicObject`, which serves as a blueprint for graphical shapes such as circles and rectangles. It defines fundamental properties like `x` and `y` coordinates, and mandates the implementation of `draw` and `resize` methods for each subclass. The `Circle` and `Rectangle` classes extend `GraphicObject`, providing concrete implementations for the abstract methods. This structure promotes code reusability and enhances maintainability while adhering to object-oriented programming principles.
E N D
abstract class GraphicObject{ int x, y; ... void moveTo(intnewX, intnewY) { ... } abstract void draw(); abstract void resize(); } //Each non-abstract subclass of GraphicObject, such as Circle and //Rectangle, must provide implementations for the draw and resize //methods: }class Circle extends GraphicObject{ void draw() { ... } void resize() { ... } } class Rectangle extends GraphicObject{ void draw() { ... } void resize() { ... } }