lunes, 28 de octubre de 2013

Gramática Básica de Java


Estructuras de Control

Secuenciales
Condicionales
Repetitivas

Secuenciales
Las secuenciales son aquellas que se ejecutan en el mismo orden que se han escrito.
            Leer(A);                      - Primera en ejecutarse.
            Leer(C);                      - Segunda en ejecutarse.
            Escribir(A);                  - Tercera en ejecutarse.
            Escribir(A+C); - Cuarta en ejecutarse.
            Leer(B);                      - Quinta en ejecutarse.
 Condicional
Las estructuras condicionales las clasificaremos en dos tipos:
  1. Condicionales Simples
  2. Condicionales Dobles
           
Condicionales Simple
Son aquellas que si se cumple una condición ejecutara un o varias acciones, en caso contrario de que no se cumpla la condición, no las ara. La sintaxis que seguiremos es la siguiente:
SI Condición Entonces
            Acción1;
            Acción2;
            Acción3;
Fsi;
Donde Condición puede ser una variable bool o una expresión que devuelva como resultado del tipo bool. En resumen, la condición tiene que ser o bien falsa o bien cierta.
Por ejemplo, si queremos pedir la edad del usuario y si es mayor de edad mostrar un mensaje, lo haremos de la siguiente forma:
            Leer(Edad);
            Si Edad => 18 entonces
                        Escribir(‘Eres mayor de edad’);
            FSi
 Condicionales Dobles
Las condicionales dobles, si la condición se cumple ejecuta unas acciones y sino ejecutara otras. Su sintaxis es la siguiente:
SI Condición Entonces
            Acción1;
            Acción2;
            Acción3;
SINO
            Acción4;
            Acción5;
Fsi;
En el ejemplo que hemos visto anteriormente si se complica que la edad era mas grande de 18 mostrábamos un mensaje pero sino la cumplía no se mostraba nada, si queremos que se muestre un mensaje diciendo si es mayor de edad o no, lo podríamos hacer la siguiente forma.
            Leer(edad);
            SI Edad < 18 entonces
                        Escribir(‘Eres menor de edad’);
            SINO
                        Escribir(‘Eres mayor de edad’);
            Fsi;
También lo podíamos hacer de esta otra manera:
           
            Leer(edad);
            Si Edad >= 18 entonces
                        Escribir(‘Eres mayor de edad’);
            SINO
                        Escribir(‘Eres menor de edad’);
            Fsi;
Iterativa o repetitiva
De estructuras iterativas tenemos dos tipos:
  1. Para
  2. Mientras
Sintaxis:
Para
Cuando aun estudiaba recuerdo que a un alumno lo castigaron con repetir 1000 una frase que ahora mismo no recuerdo. Hasta lo aprendido si quisiéramos hacer un programa que escribiera 1000 veces no hablare en clase, tendremos que escribir un algoritmo con la acción Escribir(No hablare en clase) mil veces!!!!! Un algoritmo no muy eficaz. Entonces es cuando pedimos ayuda a la estructura de control PARA, la cual repetirá una o varias acciones tantas veces como le indiquemos. Vamos a ver su sintaxis:
PARA nombreVariable:=valorInicio HASTA ValorFinal Hacer
            Acción1;
            Acción2;
FPara;
Lo que ara el PARA es repetir X veces lo que se encuentra ente PARA y FPara, y para indicarle cuantas veces tiene que repetir las acciones pondremos un valor inicial a una variable y esta variable cada vez que acabe de hacer una iteración (todas las acciones), se incrementara en uno. Vamos a hacer un programa que escriba 1000 veces no hablare en clase.
            PARA i := 1 HASTA 1000 HACER
                        Escribir(‘No hablare en clase’);
            FPara;
Con 3 finías nos hemos ahorrado 997!!
Si nos fijamos en el ejemplo hay una asignación i := 1 cuando se inicia el PARA primero de todo pone el valor 1 dentro de la variable i y luego la va incrementando en uno hasta llegar a mil. También podíamos haber puesto i := 100 pero luego nos faltarían 899 para llegar a mil, o asignarle una variable i := p o una suma i := 4+10, etc…
Pero que pasa si nuestro profesor dice, para que no puedas hacer trampas quiero que al final de cada frase pongas el numero de vez escrita la frase. Pues simplemente tendríamos que hacer lo siguiente:
            PARA i := 1 HASTA 1000 HACER
                        Escribir(‘No hablare en clase Num. Linia: ’ , i);
            FPara;
Como en la variable i se guarda la iteración que se esta ejecutando, simplemente la tendremos que poner como en el ejemplo.
Mientras
El MIENTRAS repetirá una secuencia de acciones mientras se cumpla una condición. Su sintaxis es la siguiente:
             Mientras Condición Hacer
                        Acción1;
                        Acción2;
            FMientras;
Mientras la Condición sea cierta ira repitiendo las acciones, si la condición no se llega a cumplir nunca, nuestro programa se quedara colgado ya que nunca acabara. Vamos a ver un ejemplo en el cual escribimos los valores pares del 1 al 1000.
i := 1
MIENTRAS i <= 1000 HACER
                                   SI (i mod 2)=0 ENTONCES Escriure(i);
                                   i:= i + 1;
FMientras
Mientras i sea mas pequeño que 1000 se ejecutara lo que hay dentro del mientras, en cada iteración miramos si el valor de ‘i’ es par con la comprobación (i mod 2)=2, si es cierto significa que es un valor par entonces lo escribimos, y luego aumentamos en uno el valor de la variable i


miércoles, 16 de octubre de 2013

PALABRAS RESERVADAS DE JAVA

En los lenguajes informáticos, una palabra reservada es una palabra que tiene un significado gramatical especial para ese lenguaje y no puede ser utilizada como un identificador de objetos en códigos del mismo, como ser variables. Estas 48 palabras están defnidas en el lenguaje Java. Estas palabras reservadas, combinadaas con la sintaxis de los operadores y separadores, forman la definición del lenguaje Java. Estas palabras reservadas no se pueden utilizar como nombres en sus programas Java en variables, clases o métodos. true, false, y null no son palabras clave, pero tienen el significado de palabras resevadas y ampoco se pueden utilizar como nombres en sus programas.*abstract *double *int *strictfp ** *boolean *else *interface *super *break *extends *long *switch *byte *final *native *synchronized *case *finally *new *this *catch *float *package *throw *char *for *private *throws *class *goto * protected *transient *const * if *public* try *continue *implements *return *void *default *import *short *volatile *do *instanceof *static *while

1. Abstract:
 Declara clases o métodos abstractos.
2. Double:
 Tipo de Dato primitivo de punto flotante por defecto (32 bits).
3. Int: 
Tipo de Dato primitivo entero por defecto (32 bits).
4. Strictfp:
 Especifica bajo que standard se calcularán las operaciones con datos de punto flotante, para determinar el grado de precisión de los resultados.
5. Boolean: 
Tipo de Dato primitivo booleano (true o false).
6. Else:
 Evaluación de la condición lógicamente opuesta a un if o else if.
7. Interface:
 Declara interfases.
8. Super: 
 Hace referencia a la clase padre o al constructor de la clase padre del objeto actual.
9. Break: 
Rompe el flujo normal del bloque de código actual.
10. Extends:
 Indica que una clase o interfase hereda de otra clase o interfase.
11. Long:
Tipo de Dato primitivo entero (64 bits).
12. Switch: 
 Estructura de control condicional múltiple.
13. Byte:
 Tipo de Dato primitivo entero (8 bits).
14. final:
 Declara la clase, método o variable como "definitiva".
15. native: 
 Indica que el método va a ser especificado en un lenguaje diferente a Java.
16. synchronized :
synchronized : Indica que el método, o bloque de código deberá prevenir que no sean cambiados los objectos a afectar dentro del bloque o método.
17. case:
Verifica cada valor evaluado en un a sentencia switch.
18. finally:
 Determina el bloque de código que se ejecutará siempre luego de un try asi sea que se capture o no una excepción.
19. new: 
Solicita al cargador de clases correspondiente, un objeto de esa clase.
20. this: 
 Hace referencia el objeto actual o al constructor del objeto actual.
21. catch: 
 Atrapa excepciones dentro de un bloque try
22. float : 
Tipo de Dato primitivo de punto flotante (64 bits).
23. package: 
 Especifica el paquete al que pertenece esa clase o interfase.
24. throw:
 Lanza una excepción mediante código.
25. char:
Tipo de Dato primitivo que almacena hasta un caracter UNICODE (16 bits).
26. for: 
 Estructura de control cíclica.
27. private: 
 Modificador de visibilidad de atributos y métodos limitándolos a la propia clase.
28. throws: 
 Especifica la(s) exceocione(es) que podría lanzar el método.
29. class
 Declara clases
30. goto:
  Palabra reservada que no es utilizada en el lenguaje de programación Java.
31. protected:
 Modificador de visibilidad de atributos y métodos limitándolos a la propia clase, paquete e hijo(s).
32. transient:
 Indica que el objeto no se debe serializar.
33. const: 
 Palabra reservada que no es utilizada en el lenguaje de programación Java.
34. if:
 Estructura de control condicional.
35. public: 
 Modificador de visibilidad de clases, interfaces, attributos y métodos haciéndolo visible al universo.
36. try: 
 Declara un bloque de código que posiblemente lanzará una excepción.
37. continue: 
 Rompe el flujo normal del bloque de código actual.
38. implements:
 Indica que una clase implementa a una (o varias) interfase(s).
39. return:
 Retorna (normalmente un valor) desde el método actual.
40. void: 
 Indica que el método no retornará valor alguno.
41. default:
 Modificador de visibilidad de clases, interfases, atributos y métodos limitándolos a la clase y paquete.
42. import: 
 Indica la(s) ruta(s) en la que se encuentran las clases y/o interfases usadas en el código
43. short: 
 Tipo de Dato primitivo entero (16 bits).
44. volatile: 
 Indica que a la referencia de la variable siempre se debería leer sin aplicar ningún tipo de optimizaciones ya que el dato almacenado tiene alta probabilidad de cambiar muy frecuentemente.
45. do:
Estructura de control cíclica
46. instanceof:
Operador que determina si un objeto es una instancia de una clase.
47. static:
 Indica que el método, variable o atributo pertenece a la clase y no a la instancia (objeto).
48. while:
 Estructura de control cíclica.