Ve škole jsem dostal následující zadání a potřebuju trochu nakopnout.
Vytvořte třídu GeneralRegularPolygon implementující rozhraní RegularPolygon a Colored. Tato třída pak bude sloužit jako společná nadtřída pro všechny pravidelné n-úhelníky.
Pravidelný n-úhelník je definovám svým středem a počtem a délkou hran. Konstruktor proto bude mít právě tyto tři parametry (v uvedeném pořadí). Implicitní barva je bílá ("white").
public class GeneralRegularPolygon implements RegularPolygon, Colored {
private int numEdges; private double edgeLength; private String color = "white";
private Vertex2D center; private double radius; public int getNumEdges() { return numEdges; } public double getEdgeLength() { return edgeLength; } public Vertex2D getCenter() { return center; } public String getColor() { return color; } public void setColor(String color) { this.color = color; } public GeneralRegularPolygon(Vertex2D center, int numEdges, double edgeLength) { this.center = center; this.numEdges = numEdges; this.edgeLength = edgeLength; }
Vytvořte třídu RegularOctagon pro pravidelný osmiúhelník rozšiřující GeneralRegularPolygon.
Tady tápu. Jak mám vytvořit třídu pro pravidelný osmiúhelník? Když napíšu něco jako:
public class RegularOctagon extends GeneralRegularPolygon
{
public RegularOctagon(Vertex2D center, int numEdges, double edgeLength) {
super(center, numEdges, edgeLength);
}
}
tak to sice zkompiluju, ale nedává mi to smysl, protože počet hran je pro osmiúhelník přece jasně 8. :-)
Jak mám vytvořit tu druhou třídu, aby dědila pouze střed a délku hran a počet hran mělo svůj vlastní?
Díky za odpovědi.