• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 637
  • Last Modified:

In UML/OOAD is Rectangle class subclass of Polygon or Quadrilateral

I want to know if Rectangle class is subclass of Quadrilateral or subclass of polygon.
I am sure Quadrilateral is subclass of polygon..but whats the difference between having Rectangle as subclass of polygon and having it as subclass of Quadrilateral.
Which one is the right one /better one. and why.

1 Solution
Hi arun

I would say that the better you model the better your software will be.

First of all, i would suggest that you try to see which are the classes you need to model for the software you're making.

Once you have all that then you may start to group them and find super classes and so on.

What I mean is the following......

I guess that all quadrilaterals (which I believe to be poligons of 4 sides) ARE poligons.
so I would say that quadrilateral should be a subclass of polygon.

Apart from that, a rectangle is a particular quadrilateral, so as rectangle ARE quadrilaterals then the rectangle class should  be a subclass of quadrilateral.

So you would have that rectangle is a subclass of quadrilateral and quadrilateral is a subclass of polygon.
(Indirectly rectangle is a subclass of polyline).
This would be a correct model.

Now.... the model I previously described, although correct, may be modelling some things that are not necessary.
Suppose that figures you will work on have 4 sides, so that there all polygons you'll use have 4 sides, so they are quadrilaterals. Then it is not necessary that you have a polyline class. Then your base class will be quadrilateral and you'll make your class hierarchy from there.

Hope this helps

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now