Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
CONSTRUCTORES - ¿qué es y para qué sirve?
Supongamos que se tiene la clase Punto.
Esta clase representa puntos geométricos...
CONSTRUCTORES - ¿qué es y para qué sirve?
void setX(int x) {
this.x=x;
}
void setY(int y) {
this.y=y;
}
void dibujar()
{
c...
CONSTRUCTORES - ¿qué es y para qué sirve?


Observe que cada vez que se va a crear un punto para realizar luego
una opera...
CONSTRUCTORES - ¿qué es y para qué sirve?


Al crear un constructor se deben seguir las siguientes reglas:
 El nombre de...
CONSTRUCTORES - ¿qué es y para qué sirve?


En el siguiente listado se muestra la clase Punto con dos
constructores para ...
CONSTRUCTORES - ¿qué es y para qué sirve?
Así los constructores hacen más cómoda la creación de un objeto
Punto, pasándole...
CONSTRUCTORES – por defecto
Según la cuarta regla toda clase debe tener un constructor, ¿pero que
pasa si se crea una clas...
CONSTRUCTORES – por defecto
Cuando se creó la clase Punto y no se generó ningún constructor, el
compilador implícitamente ...
CONSTRUCTORES – por defecto
Es importante tener en cuenta que al desarrollar la clase, además de poder
inicializar atribut...
CONSTRUCTORES – por defecto
Es importante tener en cuenta que al desarrollar la clase, además de poder
inicializar atribut...
Nächste SlideShare
Wird geladen in …5
×

uso Constructores

339 Aufrufe

Veröffentlicht am

  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

uso Constructores

  1. 1. CONSTRUCTORES - ¿qué es y para qué sirve? Supongamos que se tiene la clase Punto. Esta clase representa puntos geométricos caracterizados por dos coordenadas: x, y. Además se tiene un método llamado dibujar() y cuya función es mostrar los valores de las coordenadas del punto: class Punto { private: int x, y; public: int getX() { return x; } int getY() { return y; }
  2. 2. CONSTRUCTORES - ¿qué es y para qué sirve? void setX(int x) { this.x=x; } void setY(int y) { this.y=y; } void dibujar() { cout<< ̎las coordenadas son ̎ << x << ̎ , ̎<<y; } } Si se desea crear un punto a partir de esta clase y dibujarlo: Punto pt = new Punto(); pt.setX(6); pt.setY(10); pt.dibujar();
  3. 3. CONSTRUCTORES - ¿qué es y para qué sirve?  Observe que cada vez que se va a crear un punto para realizar luego una operación, se debe llamar explícitamente a los métodos setX() y setY() para asignar valores a las coordenadas del punto.  Esto además de resultar pesado en caso de tener muchos atributos, puede dar lugar a olvidos y, por tanto que ciertos atributos queden sin inicializarse. Para evitar estos problemas se tienen los constructores.  Un constructor es un método especial que se ejecuta al momento en que se crea un objeto de la clase (cuando se llama al operador new).  Los constructores permiten agregar tareas que deben realizarse al momento de crear un objeto de la clase, como por ejemplo la inicialización de los atributos.
  4. 4. CONSTRUCTORES - ¿qué es y para qué sirve?  Al crear un constructor se deben seguir las siguientes reglas:  El nombre del constructor debe ser el mismo que el de la clase.  El constructor no puede tener tipo de devolución, ni siquiera void.  Los constructores se pueden sobrecargar (una clase puede tener más de un constructor) por tanto distintas formas de inicializar sus atributos.  Toda clase debe tener al menos un constructor.
  5. 5. CONSTRUCTORES - ¿qué es y para qué sirve?  En el siguiente listado se muestra la clase Punto con dos constructores para la inicialización de las coordenadas. class Punto { private: int x, y; public: Punto (int x, int y) { this.x=x; this.y=y; } Punto(int v) { this.x=v; this.y=v; } ….. }
  6. 6. CONSTRUCTORES - ¿qué es y para qué sirve? Así los constructores hacen más cómoda la creación de un objeto Punto, pasándole las coordenadas del Punto al constructor en la instrucción de creación del objeto: Punto pt = new Punto(4, 6); // llama primer constructor pt.dibujar(); Como el constructor almacena los números en x e y, la llamada dibujar() mostrará: las coordenadas son 4 y 6 Si las dos coordenadas tuviesen el mismo valor, se optaría por el segundo constructor. Punto pt = new Punto(5); // x, y toman el valor de 5 pt.dibujar();
  7. 7. CONSTRUCTORES – por defecto Según la cuarta regla toda clase debe tener un constructor, ¿pero que pasa si se crea una clase sin constructores? En este caso el compilador añade un clase, denominado constructor por defecto: constructor a la public: NombreClase() { : } Es decir, será un constructor sin parámetros y sin código, per necesario para que la clase pueda compilar.
  8. 8. CONSTRUCTORES – por defecto Cuando se creó la clase Punto y no se generó ningún constructor, el compilador implícitamente el siguiente constructor: public: Punto() { : } Sin él no será posible crear objetos Punto de la forma: Punto pt=new Punto(); Si se genera un objeto cuya clase tenga parámetros y sólo se cuente con un constructor por defecto se provocará un error de compilación.
  9. 9. CONSTRUCTORES – por defecto Es importante tener en cuenta que al desarrollar la clase, además de poder inicializar atributos en la creación de los objetos, se desea crear objetos de la clase sin ningún tipo de inicialización, se debe codificar el constructor por defecto de la clase. class Punto { private: int x, y; public: Punto () { //constructor por defecto } Punto(int x, int y) { this.x=0; this.y=0; } Punto(int v) { this.x=0; this.y=0; } ….. }
  10. 10. CONSTRUCTORES – por defecto Es importante tener en cuenta que al desarrollar la clase, además de poder inicializar atributos en la creación de los objetos, se desea crear objetos de la clase sin ningún tipo de inicialización, se debe codificar el constructor por defecto de la clase. class Punto { private: int x, y; public: Punto () { //constructor por defecto } Punto(int x, int y) { this.x=x; this.y=y; } Punto(int v) { this.x=v; this.y=v; } ….. }

×