martes, 1 de octubre de 2013

Clase Rectángulo - II

La sentencia 5 (protected double xi, yi, x2, y2;) define cuatro nuevas variables miembro, que representan las coordenadas de dos vértices opuestos del rectángulo. Las cuatro son de tipo clouble. El declararlas como protected indica que sólo esta clase, las clases que deriven de ella y las clases del propio package tienen permiso para utilizarlas. 

Las sentencias 7-14 definen los constructores de la clase. Los constructores son unos métodos 0 funciones miembro muy importantes. Como se puede ver. no tienen valor de retorno (ni siquiera 1 vid) y su nombre coincide con el de la dase. Los constructores son un ejemplo típico de métodos sobrecargados (overloaded): en este caso hay dos constructores, el segundo de los cuales 110 tiene ningún argumento, por lo que se llama constructor por defecto. Las sentencias 7-13 definen el constructor general. Este constructor recibe cuatro argumentos con cuatro valores que asigna a las cuatro variables miembro. La sentencia 12 incrementa en una unidad (esto es lo que hace el operador ++, típico de C y C++. de los que Java lo ha heredado) el número de rectángulos creados hasta el momento.

La sentencia 14 (public Rectángulo o { this < o, o, í.o, í.o); }) define un segundo constructor, que por 110 necesitar argumentos es 1111 constructor por defecto. ¿Qué se puede hacer cuando hay que crear un rectángulo sin ningún dato? Pues algo realmente sencillo: en este caso se ha optado por crear un rectángulo de lado unidad cuyo primer vértice coincide con el origen de coordenadas. Obsérvese que este constructor en realidad no tiene código para inicializar las variables miembro, limitándose a llamar al constructor general previamente creado, utilizando para ello la palabra this seguida del valor por defecto de los argumentos. Ya se verá que la palabra this tiene otro uso aún más importante en Java.

Las sentencias 16 (public double perimetroO { return 2.0 * ((xl-x2) + (yl-y2)) ; }) y 17 (public double area <) { return (xl-x2) * (yl-y2); }) COlltieiieil la definición de los métodos miembro perimetrof) y area(). La declaración coincide con la de la clase Geometría, pero aquí va seguida del cuerpo del método entre llaves {...}. Las fórmulas utilizadas son las propias de un rectángulo.

No hay comentarios:

Publicar un comentario