public class Geometrieobjektverwaltung {
static abstract class Geometrieobjekt {
void druckeEigenschaften() {
System.out.println ("Ein Geometrieobjekt hat Kanten und Ecken, ist punktsymmetrisch oder nicht und ist achsensymmetrisch oder nicht");
}
}
static class Kreis extends Geometrieobjekt {
void druckeEigenschaften() {
System.out.println ("Ein Kreis hat keine Kanten oder Ecken, oder unendlich viele, was dasselbe ist, und ist achsensymetrisch und punktsymmetrisch");
}
}
static class Bogenstueck extends Geometrieobjekt {
void druckeEigenschaften() {
System.out.println ("Ein Bogenstueck hat keine Kante, dafuer zwei Ecken, ist vielleicht achsensymmetrisch und vielleicht punktsymmetrisch");
}
}
static class Rechteck extends Geometrieobjekt {
void druckeEigenschaften() {
System.out.println ("Ein Rechteck hat vier Kanten und vier Ecken, ist ausserdem achsensymmetrisch und als Quadrat, eine spezielle Form, Punktsymmetrisch");
}
}
public static void main(String[] args) {
Geometrieobjekt geometrieobjekt = null;
if (args[0].equals("Kreis"))
geometrieobjekt = new Kreis();
if (args[0].equals("Bogenstueck"))
geometrieobjekt = new Bogenstueck();
if (args[0].equals("Rechteck"))
geometrieobjekt = new Rechteck();
/* ... */
if (geometrieobjekt == null) {
System.out.println("Ein " + args[0]
+ " ist bisher nicht implementiert");
} else {
geometrieobjekt.druckeEigenschaften();
}
}
}