miércoles, 2 de octubre de 2013

Clase Circulo - I

A continuación se presenta la definición de la clase Circulo. también derivada de Geometría. y que resulta bastante similar en muchos aspectos a la clase Rectángulo. Por eso. en este caso las explicaciones serán un poco más breves, excepto cuando aparezcan cosas nuevas.

1.      // fichero Circulo.java
2.     public class Circulo extends Geometria {
3.         static int numCirculos = 0;
4.         public static final double PI=3.14159265358979323846;
5.         public double x, y, r;
6.         public Circulo(double x, double y, double r) {
7.            this.x=x; this.y=y; this.r=r;
8.            numCirculos++;
9.         }
10.        public Circulo(double r) { this(0.0, 0.0, r); }
11.        public Circulo(Circulo c) { this(c.x, c.y, c.r); }
12.        public CirculoO { this(0.0, 0.0, 1.0); }
13.        public double perimetroO { return 2.0 * PI * r; }
14.        public double area() { return PI * r * r; }
15.        // método de objeto para comparar círculos
16.   public Circulo elMayor{Circulo c) {
17.      if (this.r>=c.r) return this; else return c;
18.   }
19.   // método de clase para comparar círculos
20.   public static Circulo elMayor(Circulo c, Circulo d) {
21.      if (c.r>=d.r) return c; else return d;
22.   }
23. } // fin de la clase Circulo

La sentencia 3 (static int numcircuios = o,-) define una variable static o de clase análoga a la de la clase Rectángulo. En este caso no se ha definido como prívate. Cuando no se especifican permisos de acceso {public. prívate o protected) se supone la opción por defecto, que es package. Con esta opción la variable o método correspondiente puede ser utilizada por todas las clases del package y sólo por ellas. Como en este ejemplo no se ha definido ningún package. se utiliza el package por defecto que es el directorio donde están definidas las clases. Así pues, la variable mnnCirculos podrá ser utilizada sólo por las clases que estén en el mismo directorio que Circulo.

No hay comentarios:

Publicar un comentario