sábado, 28 de noviembre de 2009

Configuración del Path y Classpath de JAVA en Windows Vista

Uno de los inconvenientes más comunes que tenemos al intentar correr una aplicación java sin utilizar un editor como NetBeans o Eclipse, es la compilación y ejecución de la aplicación. Si estás haciendo la compilación mediante javac te aparecerá un error como este:

Para poder hacer la compilación de los archivos es necesario configurar las rutas del Path y del Classpath, en los siguientes pasos se muestra como hacerlo:
  1. Click derecho en mi PC y elige la opción propiedades.
  2. Configuración avanzada del sistema

  3. Variables del entorno
  4. Busca la variable llamada Path
  5. Click en editar
  6. Avanza hasta el final de las variables que esten declaradas y coloca la ruta donde se encuentra la carpeta bin de la instalación de Java separada por ";", para mi caso es "C:\Program Files\Java\jdk1.6.0_14\bin".

  7. Luego configuramos la variable ClassPath, si no se encuentra en el sistema la puedes crear con el nombre CLASSPATH y le asignamos el valor "." (Punto). Si ya se encuentra en el sistema ve al final y agregala con un ";" .

  8. Si todo ha salido bien debe mostarte un menú como el siguiente al ejecutar el comando de compilación javac.

domingo, 18 de octubre de 2009

Herencia y extensión de clase

Una de las funciones más destacadas de la POO es la herencia, un mecanismo que defien nuevos objetos con base en los existentes. Java la soporta con extensión de clase, definiendo una nueva clase con base en otra ya existente sin modificarla. A la primera se le llama subclase o clase extendida, recibe a los miembros de una superclasey agrega otros de su propiedad. Aunque es posible que la herede dado el surgimiento de jerarquías.

Java soporta herencia sencilla a través de extensión de clase. En este tipo de herencia una clase se extiende a partir de una sola superclase. Algunos lenguajes POO, como C++, soportan herencia múltiple porque una subclase puede tener varias superclases. Al anular la herencia múltiple, Java evita las dificultades y complicaciones relacionadas con este tipo de herencia. Además, si una clase se designa final no puede extenderse. El uso experto de la herencia a través de subclases contribuye en gran medida a un programa OO bien diseñado.

viernes, 16 de octubre de 2009

Miembros de instancia y estáticos

Un miembro de una clase lo es de instancia o de toda la clase. Será de instancia a menos que se declare static, lo que lo hace de toda la clase. Un campo o método de caso se agrega a un objeto anfitrión y sólo se tiene acceso a él a través del anfitrión. Por ejemplo, si tenemos una clase que gestiona cuentas bancarias, el objeto manuel.balance() devuelve el saldo del objeto manuel de la clase Cuenta. Dentro de un método de instancia se hace referencia al objeto anfitrión a través de la palabra clave this. En balance, el código return(balance_cuenta) es una abreviación de return(this.balance_cuenta). Por tanto, los miembros de instancia viven dentro de su objeto anfitrión y es posible accesarlos libre y directamente dentro del anfitrión.

Los miembros de instancia juegan un papel importante en la programación orientada a objetos. Pero a veces un atributo o una operación debe trascender los límites de los objetos individuales. Una cuota de servicio mensual puede ser parte de la clase Cuenta, pero no se restringe a cualquier objeto Cuenta individual. Un miembro de toda la clase es único y existe independientemente de cualquier instancia (objeto). Por tanto, es posible utilizar un campo de toda la clase para compartir información entre todos los objetos. En Java, los miembros de toda la clase se declaran static y a menudo se les conoce simplemente como miembros estáticos, los cuales están encerrados en el alcance de su clase, pero no tienen objeto anfitrión. Un miembro estático esta bajo el mismo control de acceso que cualquier otro miembro.

Declare un método static cuando sea un procedimiento que funciona de manera independiente de cualquier objeto de la clase. Un método estático no tiene objeto anfitrión y, por tanto, no tiene acceso a this, ni explícita ni implícitamente. Por tanto, no puede hacer referencia directa a ningún miembro de instancia (no estático). El método de entrada main de una clase se declara static.
Es posible tener acceso a un miembro estático a través de cualquier objeto de la clase. Desde luego, se llega al mismo objeto estático sin importar cuál instancia de la clase utilice. También se puede tener acceso directo a ese miembro con la notación:

NombreClase.NombreMiembroestático


Cuando una clase sólo tiene miembros estáticos y no miembros de instancia, ésta no está destinada a establecer objetos. Se convierte en un conjunto de métodos, campos o de ambos, encerrados en una alcance de clase.

Inicio

Aprendiendo