PROGRAMACIÓN EN JAVA

Francisco Javier Cruz Vílchez

Capítulo I
Estructuras Secuenciales

 

OBJETIVOS :
Al finalizar el capitulo el alumno deberá aprender :

  • Que es java y definir claramente el concepto de maquina virtual.
  • Aprenderá a definir un programa en java y sus componentes.
  • Manejara los operadores aritméticos como booleanos.
  • Planteara soluciones para programas de estructura secuencial

¿Qué es Java?

El significado de java, tal y como se le conoce en la actualidad, es el lenguaje de programación y un entorno de ejecución de programas escritos en java. Al contrario de los compiladores tradicionales , que convierten el código fuente en instrucciones a nivel de máquina, el compilador java traduce el código fuente java en instrucciones que son  interpretadas por la maquina virtual de java (JVM, Java Virtual Machine). A diferencia de C y C++ en los que está inspirado. Java es un lenguaje interpretado.

Aunque hoy en día java es por excelencia el lenguaje de programación para Internet  y la World Wide Web en particular, java no comenzó como proyecto Internet y por las circunstancias es idóneo para las tareas de programación de propósito general y, de hecho muchas de las herramientas java están escritas en java.

Características de Java

Java es un lenguaje interpretado. Cuando se escriben programas en java, bien en un entorno  de desarrollo o un editor de texto necesita ser compilado en un conjunto de instrucciones optimizadas denominadas programas “bytecode”. Este programa es independiente de la plataforma y no se puede ejecutar directamente por procesador. En su lugar, una máquina virtual java  ejecuta (interpreta) los bytecode. Existen numerosas JVM disponibles para una gran variedad de plataformas  que permiten a los programas Java ser independientes de la plataforma. Por ejemplo, un programa java compilado en una estación de trabajo UNIX puede ejecutarse en un Macintosh o un Terminal de Windows xp.

Otra fortaleza del java proviene de sus bibliotecas incorporadas. Los paquetes que vienen con el entorno de desarrollo java contienen muchos centenares de clases integradas, con muchos millares de métodos.

Especificaciones del lenguaje Java

Los lenguajes de computadoras tienen reglas estrictas de uso que deben seguirse cuando se escriben programas con el objeto de ser comprendidos por la computadora.

La especificación es una definición técnica del lenguaje que incluye sintaxis, estructura y la interfaz de programación de aplicaciones  que contienen clases predefinidas. El lenguaje evoluciona rápidamente y el mejor lugar para consultar las últimas versiones y actualizaciones del mismo se encuentra en el sitio Web de Internet de Sun.

Cómo crear un programa
Todos los programas en java minimamente deben tener una clase y un método de entrada y salida de la aplicación.

Por ejemplo  en el siguiente caso que deseamos imprimir un mensaje en pantalla vamos a definir una clase que le denominamos saludo.

Nuestro fichero deberá tener el mismo nombre de la clase para que este pueda ser interpretado por la máquina virtual y con la extensión java

class  saludo{
  public static void main (String [] args){
       System.out.println(“…..Saludos…..”)
     }
}

En java toda aplicación debe tener un punto de inicio  de la aplicación esto se da con el método main() pero podemos tener clases en java que si no son invocadas desde el método main () simplemente no funcionaran pero si pueden ser interpretadas por la máquina virtual de java.

Todas las clases después de ser interpretadas crean un fichero con la extensión class que es el puede ser interpretado por otra plataforma diferente a la que estamos trabajando.

Para el caso expuesto hemos creado una clase denominada saludo.java lo compilamos el fichero y se crea un fichero saludo.class la secuencia la mostramos en la figura siguiente.

Java es sensible a las letras mayúsculas y minúsculas  como se muestra en el siguiente caso.

public class  Cerror
public  static void Main (String [] args){

   System.out.println(“Hola Francisco …”);

}

Como se muestra en el ejemplo cuando pretendemos interpretar  con java las líneas de código lanzara mensajes de error dado que el main se encuentra mal escrito en dado que Main y main son dos cosas distintas en java .

Los nombres de las clases comienzan normalmente con una letra mayúscula y los nombres de métodos y variables con una letra minúscula.

Componentes de una Aplicación

En un programa se consideran los siguientes elementos:

//Autor: Pio Nervo

/* Programas escrito
  *Por Pio nervo
*/

Usando comentarios :

//autor : anónimo
/* clase que calcula el área de un rombo
* dadas sus dos diagonales
*/
class CRombo {
 public static void main(String [] args){
 double d1,d2,Area;
               d1=13.56;
               d2=19;                 
               Area=(d1*d2)/2;
               System.out.println("El Area del Rombo para d1="+d1+" y d2 = "+d2);
               System.out.println("\tArea = "+Area);
                             
               }
}

public  static,  private            final    abstract                      protected

double d1,d2,Area;//se definen tres variables
               d1=13.56;             //se asigna el valor a la variable d1
               d2=19;                  // se asigna el valor a la variable d2
               Area=(d1*d2)/2;  // se realiza un calculo que es asignado a la variable Area.

               //se imprime el área en pantalla
               System.out.println(“El Area del Rombo para d1=”+d1+” y d2 = “+d2);

Todas las sentencias terminan en un punto y coma.

Caso a
{  z=15;
   z=z+100;
   If(z>250){ z=z-5;}
}
Caso b
{int sum,x;
x=1;
suma=0;
   while (x<=10){
     sum +=x;
      x++;
   }
    System.out.println(“La Suma es  : “+suma);
}

System.out.println(“El Area del Rombo para d1=”+d1+” y d2 = “+d2);

Es un método que visualiza un mensaje en el monitor o consola. println está predefinida como parte del lenguaje estándar java el argumento se encuentra entre los paréntesis.

La aplicación anteriormente expuesta que calcula el área del rombo tendría la siguiente salida.

 

 

OPERADORES DE EXPRESIONES.

OPERADORES DE ASIGNACIÓN.
El operado  = asigna el valor de la expresión derecha a la variable situada a su izquierda.

Codigo= 1000;
Nota=10.51;
Y     =2*5*5+3*5+7;
Este operador es asociativo por la derecha, eso permite realizar asignaciones múltiples. Así:

A=B=C=45;

Además el operador de asignación =, java proporciona cinco operadores de asignación adicionales  como se muestra en la tabla a continuación.
Estos operadores de asignación actúan como una notación abreviada para expresiones utilizadas con frecuencia. Así, por ejemplo, si se desea multiplicar 10 por i se puede escribir ;

i=i*10; equivale a escribir i *=10;

Símbolo

Uso

Descripción

Equivalencia

=

a =   b

Asigna el valor de b a a

a=b

*=

a * =b

Multiplica a por b y asigna el resultado a la variable a.

a=a*b

/=

a  /=b

Divide a entre b y asigna el resultado a la variable a.

a= a/b

%=

a %=b

Fija a el resto a/b

a= a%b

+=

a +=b

Suma b y a y lo asigna a la variable a.

a=a+b

-=

a - =b

Resta b de a y asigna el resultado a la variable a

a=a-b

OPERADORES DE ARIMÉTICOS.

Los operadores aritméticos sirven para realizar operaciones aritméticas básicas. Los operadores aritméticos java siguen las reglas algebraicas típicas de jerarquía o prioridad. Estas reglas especifican la precedencia de las operaciones aritméticas.

Por ejemplo si queremos multiplicar a por la cantidad  b+c , escribimos:

a*(b+c)

Operador
aritmético

Expresión
algebraica

Expresión
En Java

+

f + 7

f + 7

-

p - c

p - c

*

bm

b*m

/

x/y o x  y

x / y

%

r mod s

r % s

Operadores Aritméticos

Operador

Orden de Evaluación

( )

Se evalúan primero. Si los paréntesis están anidados, la expresión  dentro del par más interno se evalúa primero.
Si hay varios paréntesis “en el mismo nivel” (es decir, no anidados), se evalúan de izquierda a derecha

*, / ó %

Se evalúan en segundo lugar. Si hay varios, se evalúan de izquierda a derecha.

+ ó -

Se evalúan al último. Si hay varios, se evalúan de izquierda a derecha

A continuación presentamos el caso del cálculo de la media aritmética (promedio) de cinco términos:

Los paréntesis son necesarios porque la división tiene mayor precedencia que la suma. Necesitamos dividir la cantidad completa (a+b+c+d+e) entre 5 . Si omitimos erróneamente los paréntesis, obtendremos a+b+c+d+e/5, que se evalúa así:

El siguiente es un ejemplo de la ecuación de una línea recta:

No necesitamos paréntesis. La multiplicación se aplica primero porque tiene mayor precedencia que la suma.

El siguiente ejemplo contiene operaciones de residuo, multiplicación, división, suma y resta:

Uso de paréntesis
(7 * (10 – 5 ) % 3 ) * 4 + 9

La subexpresión ( 10 – 5 ) se evalúa primero, produciendo ( 7 * 5  % 3 )*4+9
A continuación se evalúa de izquierda a derecha la sub expresión ( 7*5 %3)
( 35 % 3)*4+9
Seguida de
2 * 4 + 9
Se realiza a continuación la multiplicación, obteniendo

8+9
Y la suma produce el resultado final
17

OPERADORES DE INCREMENTACIÓN Y DECREMENTACIÓN

Incremento

Decremento

++n

- -n

n +=1

n - =1

n = n+1

n= n - 1

Operadores de incremento ++ y decremento  - -

Decir a++ es igual a =a+1. Las sentencias.
++n;
n++;
tiene el mismo efecto; así como

- -n ;
n- - ;

int a=1, b;
b=a++; //b vale 1 y a vale 2

int a=1,b;
b=++a; //b vale 2 y a vale 2

Demostración de incremento y decremento con el la siguiente clase de java.

class Incremento {
            public static void main(String [] args){
            int m=45, n=75;
            System.out.println("m = "+m +" n = "+n);
            ++m;
            --n;
            System.out.println("m = "+m +" n = "+n);
            m++;
            n--;
            System.out.println("m = "+m +" n = "+n);
            }
}

Salida del programa anterior.

class OrdenOut {
            public static void main(String [] args){
            int n=5, t;
            t=++n*--n;
            System.out.println("n= "+n+" ,t ="+t)            ;
            System.out.println(++n+ " "+ ++n +" "+ n++);
           
           

class CPrueba {
      public static void main(String [] args){
                  int a=10,b=3,c=1,d,e;
                  float x,y;
                  x=a/b;
                  System.out.println("el valor de b Inicial : "+b);
                  d=a+b++;
                  System.out.println("el valor de b Final   : "+b);
                  e=++a - b;
                  y =(float)a/b;
                  System.out.println("El valor de x ="+x);
                  System.out.println("El Valor de d ="+d);
                  System.out.println("El Valor de e ="+e);
                  System.out.println("El Valor de y ="+y);
      }
}
OPERADORES LÓGICOS

Operador

Operación lógica

Ejemplo

&& o &

Operando1 && Operando2

m<n && i>j

|| o |

Operando1 || Operando2

m = 5 || n! = 10

!

no lógica

!(x > = y)

^

Operando1 ^| Operando2

x < n ^ n > 9

Los operadores lógicos de Java son : not (!) and (&&), or(||) y or exclusivo(^).


Ejemplos

System.out.println(“Los resultados no son válidos”);
}

Si la variables ventas es mayor a 50000 o bien la variable horas es menor que 100, entonces asignar a la variable prima el valor 100000.

{
System.out.println(“Par de valores no válidos”);
}
                       
Se visualiza el mensaje Par de valores no válidos para valores de x menores que 5 y de b mayores o igual que 19; o bien, para valores de x mayores o igual que 5 y de b menores que 19

Volver al índice

Enciclopedia Virtual
Tienda
Libros Recomendados


1647 - Investigaciones socioambientales, educativas y humanísticas para el medio rural
Por: Miguel Ángel Sámano Rentería y Ramón Rivera Espinosa. (Coordinadores)

Este libro es producto del trabajo desarrollado por un grupo interdisciplinario de investigadores integrantes del Instituto de Investigaciones Socioambientales, Educativas y Humanísticas para el Medio Rural (IISEHMER).
Libro gratis
Congresos

15 al 28 de febrero
III Congreso Virtual Internacional sobre

Desafíos de las empresas del siglo XXI

15 al 29 de marzo
III Congreso Virtual Internacional sobre

La Educación en el siglo XXI

Enlaces Rápidos

Fundación Inca Garcilaso
Enciclopedia y Biblioteca virtual sobre economía
Universidad de Málaga