Notas básicas de Java

NOTA 1 BÁSICA

Un código fuente Java sólo puede tener una clase con el modificador de acceso public. Si el modificador de la clase es public, el código fuente debe tener el mismo nombre que la clase.

Todos los códigos se guardarán en c:\cursojava\tema1

Ejemplo 1:

Código fuente

Si se guarda el código Java en un fichero con un nombre distinto al de la clase y se intenta compilar, se produce error.

Ejemplo 2:

Código fuente

Si se guarda el código Java en un fichero con el nombre de una de las clases y se intenta compilar, se produce error.

NOTA 2 BÁSICA

Si un código fuente Java tiene varias clases, lo habitual es que sólo una de ellas cuente con método main. Se verá en el tema de sockets que, a veces, puede resultar cómodo contar con dos métodos main en dos clases de un mismo código fuente. Por el momento, se trabajará con un sólo método main. Si hubiera varios definidos en clases del mismo código fuente, sólo se ejecuta uno de ellos; el resto no se ejecuta.

La pregunta es: ¿qué método main va a ejecutarse?

La respuesta es: el asociado a la clase principal; esta clase principal la define el programador cuando ejecuta el código con: java <clase_principal>.

Ejemplo:

Código fuente

El fichero donde se guarda el código Java debe llamarse "Primera.java" pues es la clase pública del código. El programador puede controlar qué clase va a ser la principal, es decir, qué clase va a contener el método main, desde la consola del DOS . El resto de métodos main no se tendrán en cuenta.

Si desde la consola, y después de compilar con "javac Primera.java" se ejecuta con:

java Primera =>Por consola: Esta es la clase Primera

Si java Segunda => Por consola: Esta es la clase Segunda

Si java Tercera => Por consola: Esta es la clase Tercera

NOTA 3 BÁSICA

Un código fuente Java no tiene por qué tener clase principal (aquella que contiene el método main o punto de entrada del programa).

Ocurrirá lo siguiente: se podrá compilar pero no ejecutar (error de ejecución). El programa carece de punto de entrada.

Se utilizan para recibir llamadas de otras clases, mediante la creación desde la clase llamante de un objeto de la clase a la que se invoca.

Ejemplo:

Código fuente

NOTA 4 BÁSICA

Una clase Java puede comunicarse con clases que no se encuentran en su código fuente mediante la creación de objetos adecuados.

Lo que debe hacerse es crear un objeto de la clase a la que se quiere acceder utilizando el nombre de la clase y la palabra reservada new.

Mediante este objeto se tiene acceso a los métodos y variables de instancia no privadas de esa clase. Se verá en los siguientes temas las características de una "variable de instancia" y el modificador de acceso aplicable a variables y métodos "private". Por el momento, sobre las variables de instancia, bastará con saber que se declaran después de la clase y fuera de cualquier método, y que tienen alcance global.

Ejemplo: cada clase se guardará en un código fuente distinto.

Código fuente

Código fuente

Código fuente

Por consola:

225

Has calculado el cuadrado de un numero

FIN DEL PROGRAMA

NOTA 5 BÁSICA

Para acceder a los métodos y variables de instancia definidos en una clase desde su metodo main se hace lo mismo que en la nota anterior, es decir, se crea un objeto de esa clase y mediante ese objeto se llama a los métodos y variables de instancia que interesen. No importa que sean privados.

Ejemplo:

Código fuente

Por consola:

225

Has calculado el cuadrado de un numero

FIN DEL PROGRAMA

NOTA 6 BÁSICA

El anterior programa también se puede codificar utilizando únicamente el método main:

Ejemplo:

Código fuente

Por consola:

225

Has calculado el cuadrado de un numero

FIN DEL PROGRAMA

Esta última forma de programar se emplea cuando el programa es sencillo. Lo habitual es que un programa se componga de varias clases en distintos códigos fuente y que cada clase tenga varios métodos y variables de instancia. Para explicar tipos de variables, bucles, estructuras condicionales y conceptos básicos de programación se empleará una clase y sólo el método main. Cuando se hagan programas más complejos se emplearán varias clases y varios métodos en cada clase. El enfoque más orientado a objetos del programa desarrollado en las notas 4, 5 y 6 es, sin duda, el de la nota 4. La clase SinMetodoMain, mediante el método "int calcularCuadrado(int numero)" calcula un entero siempre y cuando reciba a través de su argumento otro.

Esta clase puede ser utilizada por cualquier programador Java en el momento que lo necesite el desarrollo de su programa. Es una práctica habitual en el diseño de una aplicación Java utilizar clases creadas por otros programadores.

SUN (Standford University Network), empresa creadora de Java, pone a disposición de los programadores, con el objetivo de que les sirva de apoyo para el desarrollo de sus propias aplicaciones, una biblioteca de clases e interfaces, estructuradas en paquetes (packages), con multitud de métodos y variables de campo estáticas.

Esta biblioteca recibe el nombre de API (Application Programming Interface o Interfaz de programación para crear aplicaciones), y todo programador tiene que aprender a trabajar con ella porque es fundamental para poder desarrollar aplicaciones en Java.

A continuación, tres vídeos en los que se explican la descarga e instalación de la API, la estructura y manejo de la API y el uso de métodos y variables de campo estáticas de la API.

Respecto a la descarga de la API, los pasos a seguir son los mismos que cuando se descarga el JDK: sección Download/Java SE dentro de http://java.sun.com y pulsar el botón Download de la sección Java SE Documentation. La API está empaquetada en un fichero .zip

Este zip se suele descomprimir en el directorio de instalación del JDK, jdk_home, a partir de ahora. Hecho esto, aparecerá un directorio docs colgando de jdk_home. Dentro de docs, abrir el index.html, luego enlace "API & Language" y, a continuación, enlace "Java 2 Platform API Specification (NO FRAMES)".

Finalmente, se agregará a Favoritos una entrada que apunte al htm anterior.

Esto mismo, es lo que se cuenta en el vídeo "Descarga e Instalación de la API".

Descarga e instalación de la API

Este vídeo es muy importante. Se recomienda reproducirlo íntegramente

Estructura y manejo de la API

Este otro también.

Uso de métodos y variables de campo estáticas de la API

NOTA 7 BÁSICA

Reglas para los nombres de clases, métodos y variables: 

NOTA 8 BÁSICA

Dentro de una clase, para acceder a un método desde otro que no es el main o no es un método estático, basta con llamar al método directamente. No es necesario crear un objeto o instancia de la clase. 

Ejemplo:

Código fuente

Por consola:

Estas en el método mostrarSaludo

Estas en el método saludoBienvenida

Bienvenido amig@

Has vuelto al método mostrarSaludo

FIN DEL PROGRAMA

Empleo del operador +

Ejemplo 1: en este código, una cadena de texto se concatena con un número entero almacenado en una variable primitiva de tipo int. Internamente lo que ocurre es que el número 10 asociado a la variable entera se convierte automáticamente en la cadena de texto "10", y lo que hace el + es sumar dos cadenas de texto

Código fuente

Por consola:

El valor de entero1 es 10

Ejemplo 2: las líneas 5 y 6 habitualmente se escriben en una sola línea. Aquí se ha optado por desdoblarla en dos por cuestiones de diseño del formato interno del curso. Así, la línea que se muestra a continuación equivale a las dos citadas:

System.out.println("El valor de entero1 es "+entero1+" y el de entero2 es "+entero2);

Código fuente

Por consola:

El valor de entero1 es 10 y el de entero2 es 25

Ejemplo 3: las líneas en verde son comentarios. Se utilizan para explicar y aclarar líneas de código. Se analizarán en temas posteriores. El compilador no los tiene en cuenta.

Código fuente

Por consola:

La suma de 10 y 25 es 35