InicioApuntes Y MonografiasJava para programadores en C++ III - Codear y Compilar

Java para programadores en C++ III - Codear y Compilar

Java para programadores en C++ III - Codear y Compilar

Java para programadores en C++




Parte III: Codear y Compilar.
Mostrar datos en la consola.



Java está basado en C++, por lo que verán que la mayoría de las cosas son similares sino idénticas. Por esto, la metodología de estos post va a ser empezar asumiendo que las cosas se hacen igual que en C++, e ir marcando las diferencias.

Empecemos con una de ellas: En Java no se hace una separación prototipo-implementación. Por esto, tampoco se separa un mismo código en dos archivos (como en C++ .h y .cpp). Hay una forma de seguir obteniendo el beneficio de brindar una interfaz sin que el cliente/usuario tenga acceso al código fuente, pero es tema para más adelante.

La estructura de un código de Java es mucho más restrictiva que en C++. En un código de Java solamente puede haber clases. Es decir, no hay "espacio global", no hay funciones, no hay variables globales, etc. Todo código debe estar encapsulado adentro de una clase. Las únicas dos excepciones son los includes (que en java son imports) y la declaración de paquetes (de los que hablo más adelante).

java

Archivos

- Los archivos de código fuente tienen extención ".java".

- Los archivos de clases compiladas tienen extención ".class" y vendrían a ser los análogos en C++ a los archivos ".o" y a las librerías. Los ".class" se pueden ejecutar escribiendo en la consola
java NombreArchivo
(sin la extension).

- Los archivos de código fuente ".java" se compilan a ".class" escribiendo en la consola
javac NombreArchivo.java
- Los ejecutables finales de los programas compilados tienen extención ".jar". Se ejecutan ingresando en consola
java -jar NombreArchivo.jar
Java no genera archivos .exe . Para crearlos pueden hacer un programa en C++ que tenga simplemente un main con la línea
system( "java -jar NombreArchivo.jar" );
o como se les ocurra.

Programacion

Estructura de un programa

Un programa es una clase. En java, las clases pueden tener nivel de accesibilidad como los métodos (public, private). Las clases públicas deben tener el mismo nombre que el archivo de código fuente en el que se declaran y definen. Así, por ejemplo, una clase pública definida en el archivo fuente "MiPrograma.java" se llamara "MiPrograma" y viceversa. Cabe aclarar que por esta característica solamente puede haber una clase pública por archivo de código fuente.

La estructura básica de un programa es una clase principal del mismo nombre que el programa que tiene un método main (en Java no hay funciones, así que main es un método). Su declaración es:

public class NombrePrograma {

    public static void main( String[] args ) {

        // Acciones del programa.

    }

}

En el post sobre clases de la serie hay más información sobre esta sintaxis.

tutoriales

Comentarios

Los comentarios son iguales a C++. La forma de comentar propia de java se denomina Javadoc y su estructura es /** comentario */ Es utilizada para generar documentación en html mediante el javadoc utility program (incluido en el JDK). Es similar a generar documentación con Doxygen en C++.

lenguajes

Punteros en Java

Este tema es algo peculiar. En Java hay dos grandes grupos de tipos: los tipos de datos primitivos (char, float, int, etc) y las clases. TODA VARIABLE QUE NO CORRESPONDE A UN TIPO DE DATO PRIMITIVO ES UN PUNTERO. Dicho esto, no podemos elegir cuándo trabajar con punteros y cuándo no, porque siempre trabajaremos con punteros cuando empleemos una clase, el lenguaje está hecho así . Los objetos se van a instanciar entonces con el operador new.

A razón de que no hay distinción entre objeto y puntero, el operador de acceso de miembro mendiante punteros ( -> ) no existe. Para acceder a los miembros siempre se utiliza el operador punto.

codigo

Escribiendo en la pantalla

Para mostrar datos en la pantalla mediante la consola se utilizan los métodos (recordar que no hay funciones) de la clase System definida en el paquete java.lang de la API de Java. System tiene 3 objetos miembros static llamados in, out y err, y corresponden a lo que en C++ son cin, cout y cerr respectivamente. Cada uno de estos objetos tiene a su vez los métodos de entrada/salida que vamos a utilizar. Como son objetos miembro de la clase System, y a su vez necesitamos acceder a los métodos de cada uno, los invocaremos con la sintaxis:
System.nombreObjeto.nombreMetodo();
(En Java se accede a los miembros static mediante el operador punto y no mediante el operador de resolución de ámbito ( :: ) como en C++).

- Para mostrar una cadena en pantalla y ubicar el cursor al final se utiliza:
 System.out.print( "cadena" ); 

- Para mostrar una cadena en pantalla y pasar a la linea de abajo se utiliza:
 System.out.println( "cadena" ); 

- Para mostrar una cadena con formato se utiliza:
 System.out.printf( "cadena de formato", arg_1, ..., arg_n ); 

Cada método print de System.out se utiliza y funciona de la misma forma que las funciones de mismo nombre de C.
out es una instancia de la clase PrintStream (del paquete java.io). Pueden ver sus otros métodos consultado su documentación: http://docs.oracle.com/javase/6/docs/api/java/io/PrintStream.html

Guias

Creando nuestro primer programa

Ya tenemos los recursos para crear nuestro primer programa en Java. Si están en un IDE crean un nuevo proyecto y dentro del mismo una nueva clase. Si utilizan un editor, creen el archivo PrimerPrograma.java.

Dentro de él escribimos, como no podía ser de otra forma :
public class PrimerPrograma {
    
    public static void main( String[] args ) {
        
        System.out.println( "Hola mundo!" );
        
    }
    
}


Corren el programa en el IDE o, si crearon la fuente con un editor, abran la consola, ubíquense en el directorio del archivo fuente y compilen la fuente a un archivo .class como se indicó más arriba escribiendo:
javac PrimerPrograma.java
y luego lo ejecutan con
java PrimerPrograma
Obtenemos así nuestra primera salida

Hola mundo!



programadores

Datos archivados del Taringa! original
20puntos
199visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
2visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

e
elwear🇦🇷
Usuario
Puntos0
Posts3
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.