jueves, 31 de marzo de 2011
herencia
La herencia en java
Java permite el empleo de la herencia , característica muy potente que permite definir una clase tomando como base a otra clase ya existente. Esto es una de las bases de la reutilización de código, en lugar de copiar y pegar.
En java, como ya vimos la herencia se especifica agregando la claúsula extends después del nombre de la clase. En la claúsula extends indicaremos el nombre de la clase base de la cuál queremos heredar.
Al heredar de una clase base, heredaremos tanto los atributos como los métodos, mientras que los constructores son utilizados, pero no heredados.
Practicas:
Construyamos la clase Taxista.java con el siguiente código:
public class Taxista extends Persona {
private int nLicencia;
public void setNLicencia(int num)
{
nLicencia = num;
}
public int getLicencia()
{
return nLicencia;
}
}
Java permite el empleo de la herencia , característica muy potente que permite definir una clase tomando como base a otra clase ya existente. Esto es una de las bases de la reutilización de código, en lugar de copiar y pegar.
En java, como ya vimos la herencia se especifica agregando la claúsula extends después del nombre de la clase. En la claúsula extends indicaremos el nombre de la clase base de la cuál queremos heredar.
Al heredar de una clase base, heredaremos tanto los atributos como los métodos, mientras que los constructores son utilizados, pero no heredados.
Practicas:
Construyamos la clase Taxista.java con el siguiente código:
public class Taxista extends Persona {
private int nLicencia;
public void setNLicencia(int num)
{
nLicencia = num;
}
public int getLicencia()
{
return nLicencia;
}
}
operador this
Apuntador this
Cuando hacemos una llamada a una función miembro de un objeto, el compilador se encargará de pasar implícitamente como argumento: a un apuntador que contenga la dirección del objeto.
A este apuntador se lo llama, el apuntador
this
(palabra reservada del lenguaje C++). Además de este uso implícito por parte del compilador, se puede usar this
explícitamente para referirse al objeto.Dependiendo del tipo de función en la cual se use
this
, tendrá diferente tipo.En una función miembro no constante:
NomObjeto * const //(apuntador constante a un objeto no constante)En una función miembro constante:
const NomObjeto * const //(apuntador constante a un objeto constante)A continuación veremos cómo utilizar el apuntador
this
, de manera implícita (como veníamos haciendolo) y de manera explícita. Cabe recalcar que cuando lo usemos de manera explícita, utilizaremos
->
(un menos y el mayor) ya que se trata de un apuntador y no del objeto en sí dónde deberíamos usar simplemente el .
(punto).#include <iostream> using std::cout; using std::endl; class Prueba { public: Prueba(int y = 0) { this->x = y; //usamos apuntador this explicito. } int Obtener(void) { return x; //usamos apuntador this implicito } private: int x; }; int main() { Prueba objeto1(5); cout << objeto1.Obtener() << endl; return 0; }Para compilar este programa utilizaremos:
g++ apuntThis.cpp -o apuntThis.out
miércoles, 30 de marzo de 2011
jueves, 17 de marzo de 2011
jueves, 10 de marzo de 2011
Suscribirse a:
Entradas (Atom)