Fundamentos de JAVA

Estructura básica o general de un programa en JAVA
Un programa en Java por lo regular tiene la siguiente estructura:
Monografias.com
Package: Un package es una agrupación de clases. Es parecido a una "caja" que contiene las clases que queramos mantener en un solo lugar. También podría decirse que los packages es el equivalente a las librerías en otros lenguajes. Esta parte del código no es obligatoria, es sólo si lo necesita usar nuestro programa.
Import: En ocasiones nuestros programas requerirán utilizar clases existentes en otros Packages, y esto se puede lograr con Import.
Clases: Java puede crear diferentes tipos de clases: privadas, públicas y protegidas; y se utilizan de acuerdo a conveniencia de la estructura de nuestro programa.
Variables: Java maneja tres tipos de variables: de instancia, de clase y locales.
  • Las variables de instancia son las que se usan para guardar valores o atributos de un objeto en particular.
  • Las variables de clase son las que guardan valores o atributos de la clase.
  • Las variables locales son las que se declaran en una función o método y solamente las puede utilizar esa función o método, de ahí el nombre de locales.
Constructores: Los constructores son la forma de crear los objetos.
Métodos: En Java los métodos son los que utilizamos para realizar alguna tarea en específico. Podemos decir que hay dos tipos de métodos en Java: El primero, que llamaremos set (poner) sirve para manipular y/o fijar valores en las variables, por ejemplo: cuando especificamos que el balón va a ser color blanco. El segundo, denominado get (obtener) sirve para obtener un valor de una variable, por ejemplo: cuando queremos saber la edad de Juan.
Comentarios: Éstos pueden incluirse en cualquier parte del código. Sus líneas serán completamente ignoradas por el compilador, o sea que no afectarán para nada nuestro programa. Cuando una persona está aprendiendo a programar es altamente recomendable que escriba los comentarios que se le de la gana en su código (siempre y cuando no sea basura claro), ya que esto ayuda mucho a entender lo que está haciendo una función, para qué sirve una variable o declaración, hasta facilita el hacer modificaciones y mejoras al programa en el futuro.

Un programa simple en Java tiene la siguiente estructura:
Monografias.com
Donde Nombre de la clase es el nombre de la clase principal que contiene el código fuente que deberá guardarse en la computadora con el sufijo .java (NombreClase.java). Todas las aplicaciones Java tienen un método main que a su vez, contiene un conjunto de instrucciones. En Java los conjuntos o bloques de sentencias se indican entre llaves ({ y }). Ejemplo Con este ejemplo mostramos la estructura de una aplicación Java simple. El nombre de la clase Saludo deberá guardarse como Saludo.java
public class Saludo
{
public static void main( String[] args)
{
System.out.println("Saludos desde Mexicali");

//Fin del metodo main
  }
 }
//Fin de la clase Saludo.

Tipos de datos de java.
Resultado de imagen para tipos de datos en java


Variable:
En programación, una variable está formada por un espacio en el sistema de almacenaje (memoria principal de un ordenador) y un nombre (un identificador) que está asociado a ese espacio. Ese espacio contiene resto de información conocida o desconocida, es decir un valor. El nombre de la variable es la forma usual de referirse al valor almacenado: esta separación entre nombre y contenido permite que el nombre sea usado independientemente de la información exacta que representa. El identificador, en el código fuente de la computadora puede estar ligado a un valor durante el tiempo de ejecución y el valor de la variable puede por lo tanto cambiar durante el curso de la ejecución del programa.
El valor de una variable en computación no es necesariamente parte de una ecuación o fórmula como en matemáticas. En computación una variable puede ser utilizada en un proceso repetitivo: puede asignársele un valor en un sitio, ser luego utilizada en otro, más adelante reasignársele un nuevo valor para más tarde utilizarla de la misma manera.Procedimientos de este tipo son conocidos con el nombre de iteración. En programación de computadoras, a las variables, frecuentemente se le asignan nombres largos para hacerlos relativamente descriptivas para su uso, mientras que las variables en matemáticas a menudo tienen nombres escuetos, formados por uno o dos caracteres para hacer breve en su transcripción y manipulación.
Las variables pueden ser de longitud:
  • Fija.- Cuando el tamaño de la misma no variará a lo largo de la ejecución del programa. Todas las variables, sean del tipo que sean tienen longitud fija, salvo algunas excepciones — como las colecciones de otras variables (arrays) o las cadenas.
  • Variable.- Cuando el tamaño de la misma puede variar a lo largo de la ejecución. Típicamente colecciones de datos.

Constante
En programación, una constante es un valor que no puede ser alterado/modificado durante la ejecución de un programa, únicamente puede ser leído.
Una constante corresponde a una longitud fija de un área reservada en la memoria principal del ordenador, donde el programa almacena valores fijos.
Por ejemplo:
  • El valor de PI = 3,1416
Por conveniencia, el nombre de las constantes suele escribirse en mayúsculas en la mayoría de lenguajes.

Java

public static final String UNA_CONSTATE = "Un valor fijo"

Identificador
Un identificador es un conjunto de caracteres alfanuméricos de cualquier longitud que sirve para identificar las entidades del programa (clases, funciones, variables, tipos compuestos) Los identificadores pueden ser combinaciones de letras y números. Cada lenguaje tiene sus propias reglas que definen como pueden estar construidos. Cuando un identificador se asocia a una entidad concreta, entonces es el "nombre" de dicha entidad, y en adelante la representa en el programa. Nombrar las entidades hace posible referirse a las mismas, lo cual es esencial para cualquier tipo de procesamiento simbólico.

Palabra Reservada
Las palabras reservadas son identifcadores predefinidos reservados que tienene siginificados especiales y no se pueden utilizar como identificadores de sus programas.
Java 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 tampoco 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
* indica una palabra reservada que no se utiliza actualmente
 ** indica una palabra reservada añadida a Java 2 

Comentarios (Linea y de Bloque)
Existen tres tipos de comentarios. Los comentarios de línea, de bloque y los javadoc.
-Comentarios de líneaLos comentarios de línea se utilizan para comentar en una sola línea, una sentencia, explicar la definición de una variable, o un paso a paso del código que se esta observando. Un ejemplo de comentario de línea es el siguiente:

         int num =  5 // este comentario me permite decir que esta es una asignación de un numero.
-Comentarios de bloque
Los comentarios de bloque permiten comentar un bloque de código o simplemente agregar varias líneas de texto para explicar algo que solo debe ser visto en el momento de la programación. El modo de utilizarlo es el siguiente:

         /*
                         En este comentario se puede explicar varias cosas.
                         Algunas condiciones que se deben cumplir para continuar con la ejecución del código
                         Algun código alternativo en caso de estar testeando alguna versión, o modificando el programa.
                         O simplemente dejar alguna advertencia sobre el código que se esta observando
         */ 
-Comentarios JavadocLos comentarios del tipo javadoc permiten documentar de una forma mas útil, mas publica nuestro programa. Pueden ir en cualquier sector de las clases, los packages, los atributos, los métodos. Una vez que esta documentación se ha escrito explicando o definiendo una clase, un paquete o los atributos o métodos, con la ejecución de la herramienta javadoc se obtiene un sitio con la api del programa, donde se encontraran las explicaciones que se fueron agregando en las clases. Todos estos comentarios son vinculados como en la api de java standard.
-Caracteres especialesLa representación de caracteres especiales como el salto de línea o la tabulación, se logran a partir de la barra (\). Los caracteres especiales mas utilizados son:
ü  \n à Nueva línea
ü  \t à Tabulador
ü  \’ à Comilla simple
ü  \” à Comilla doble
ü  \\ à Barra

Operadores
Resultado de imagen para operadores de asignación en java


Resultado de imagen para operadores aritmeticos en java

Incrementales
Resultado de imagen para operadores Aritméticos incrementales  en java

Combinados
Resultado de imagen para operadores Aritméticos combinados en java

Operadores relacionales  <ul><li>Los operadores relacionales comparan dos valores y determina la relación entre esos valor...

Operadores Lógicos <ul><li>tienen uno o dos operandos booleanos que producen un resultado booleano .  </li></ul><ul><li>Ha...


Clase Math

Resultado de imagen para clase math java

Estructuras
Selectivas 
En las estructuras selectivas se evalúan una condición y en función del resultado de la misma se realiza una opción u otra. Las condiciones se especifican usando expresiones lógicas. La representación de una estructura selectiva se hace con palabras en pseudocódigo (if, then, else o bien en español si, entonces, si_no), las estructuras selectivas pueden ser:

Simples

Las estructuras selectivas simples o condicionales están compuesta únicamente de una sola condición si es verdadera ejecutara la acción o acciones si la condición es falsa no hará nada.
if (condición) entre paréntesis esta la condición que se debe evaluar
acción (si la condición entre paréntesis es verdadera se ejecutara la acción o acciones, porque, puede estar conformado por varias acciones)
end
Antes de mostrar el ejemplo vamos a explicar algunos comandos que vamos a utilizar:
# => este comando nos permite poner un comentario, puede ser a principio de linea o en cualquier posición de ella.
puts => este comando nos permite imprimir cualquier texto en pantalla, puede ser el resultado de una operación o un texto escrito entre comillas.
Ejemplo:
edad = 19 # asignamos un valor a la variable edad
if (edad > 17)
puts “Es mayor de edad”
end
Si ejecutamos el programa que hemos desarrollado el resultado seria: Es mayor de edad, porque, la condición que esta entre paréntesis es verdadera, porque, edad que tiene asignado 19 es mayor a 17, en cambio, si el valor asignado a la variable edad fuera menor a 18, no mostraría ningún resultado.

Dobles

Las estructuras selectivas dobles están compuesta únicamente de una sola condición, si es verdadera ejecutara la acción o acciones y si la condición es falsa ejecutara las acciones para la condición falsa. Esta estructura selectiva solo se debe utilizar únicamente cuando existen dos condiciones, si hubieran mas de dos condiciones se puede utilizar varias selectivas simples o una selectiva múltiple.
if (condición)
acción (si la condición entre paréntesis es verdadera se ejecutara la acción o acciones, porque, puede estar conformado por varias lineas)
else
acción (si la condición entre paréntesis es falsa se ejecutara la acción o acciones, porque, puede estar conformado por varias lineas)
end
Ejemplo:
Siguiendo con el ejemplo anterior asignaremos el mismo valor a la variable edad
edad = 19 # asignamos un valor a la variable edad
if (edad > 17)
puts “Es mayor de edad”
else
puts “Es menor de edad”
end
Si ejecutamos el programa que hemos desarrollado el resultado seria: Es mayor de edad, porque, la condición que esta entre paréntesis es verdadera, porque, edad que tiene asignado 19 es mayor a 17, en cambio, si el valor asignado a la variable edad fuera menor a 18,  el resultado seria Es menor de edad, porque, la condición es falsa.

Múltiples

Las estructuras selectivas múltiples o anidadas están compuesta múltiples selectivas simples que están unidas por el comando elsif el resultado que se obtiene con una selectiva multiple se puede obtener con varias selectivas simples, entonces, ¿cual es la diferencia? el codigo es mas pequeño, aunque, yo siempre he recomendado a mis alumnos que cuando recien se esta aprendiendo a programar es recomendable que al principio se trabaje con selectivas simples, a medida que se va aprendiendo y ganando destreza se puede comenzar a utilizar las selectivas multiples en los casos que ellos crean conveniente y necesarios.
if (condición)
acción (si la condición entre paréntesis es verdadera se ejecutara la acción o acciones, porque, puede estar conformado por varias lineas)
elsif (condición)
acción (si la condición entre paréntesis es verdadera se ejecutara la acción o acciones, porque, puede estar conformado por varias lineas)
elsif (condición)
acción (si la condición entre paréntesis es verdadera se ejecutara la acción o acciones, porque, puede estar conformado por varias lineas)
end
Ejemplo:
Siguiendo con el ejemplo anterior asignaremos el mismo valor a la variable edad
edad = 19 # asignamos un valor a la variable edad
if (edad > 17)
puts “Es mayor de edad”
elsif (edad < 18)
puts “Es menor de edad”
end
Si ejecutamos el programa que hemos desarrollado el resultado seria: Es mayor de edad, porque, la condición que esta entre paréntesis de la primera condición es verdadera, porque, en las selectivas múltiples cada condición debe ser única, porque, cuando ingresa en una de ellas ahí termina el programa, si el valor asignado a la variable edad fuera menor a 18,  el resultado seria Es menor de edad, porque, hubiera ingresado en la segunda condición y no en la primera.
Estructuras Iterativas

FOR:
Los bucles for van asignadno valores a un avariable desde un valor incial hasta un valor final, y cuando la variable contiene un valor que està fuera del intervalo el bucle termina.
Sintaxis:
For(valor=inicial;condicion;
incremento)
                  Instrucciones
}

While:
Significa "Mientras", esta se repetira mientras una condicion determinada se cumpla, o sea, devuelva verdadero.
Sintaxis:
While(condicion)
{
Instrucciones
}

Do While:
La sentencia do es usada generalmente en cooperacion con ehile para garantizar que una o mas instrucciones se ejecuten al menos una vez.
Sintaxis:
DO
{
Instrucciones
}
while (Condicion);



¿Qué es un Array en Java?
Un array es una estructura de datos que nos permite almacenar una gran cantidad de datos de un mismo tipo. El tamaño de los arrays se declara en un primer momento y no puede cambiar en tiempo de ejecución como puede producirse en otros lenguajes.
La declaración de un array en Java y su inicialización se realiza de la siguiente manera:
tipo_dato nombre_array[];
nre_array = npo_dato[tamaño];

Por ejemplo, podríamos declarar un array de caracteres e inicializarlo de la siguiente manera:
char arrayCaracteres[];
arrayCaracteres = new char[10];

Los arrays se numeran desde el elemento cero, que sería el primer elemento, hasta el tamaño-1 que sería el último elemento. Es decir, si tenemos un array de diez elementos, el primer elemento sería el cero y el último elemento sería el nueve.
Para acceder a un elemento especifico utilizaremos los corchetes de la siguiente forma. Entendemos por acceso, tanto el intentar leer el elemento, como asignarle un valor.
arrayCaracteres[numero_elemento];
Por ejemplo, para acceder al tercer elemento lo haríamos de la siguiente forma:
// Lectura de su valor.
char x = arrayCaracteres[2];
// Asignación de un valor:
arrayCaracteres[2] = 'b'

El objeto array, aunque podríamos decir que no existe como tal, posee una variable, la cual podremos utilizar para facilitar su manejo.

COLECCIONES
Las colecciones son una especie de arrays de tamaño dinámico.

En Java las principales interfaces que disponemos para trabajar con colecciones son: Collection, Set, List, Queue y Map:
  • Collection<E>: Un grupo de elementos individuales, frecuentemente con alguna regla aplicada a ellos.
  • List<E>: Elementos en una secuencia particular que mantienen un orden y permite duplicados. La lista puede ser recorrida en ambas direcciones con un ListIterator. Hay 3 tipos de constructores:
    1. ArrayList<E>: Su ventaja es que el acceso a un elemento en particular es ínfimo. Su desventaja es que para eliminar un elemento, se ha de mover toda la lista para eliminar ese “hueco”.
    2. Vector<E>: Es igual que ArrayList, pero sincronizado. Es decir, que si usamos varios hilos, no tendremos de qué preocuparnos hasta cierto punto.
    3. LinkedList<E>: En esta, los elementos están conectados con el anterior y el posterior. La ventaja es que es fácil mover/eliminar elementos de la lista, simplemente moviendo/eliminando sus referencias hacia otros elementos. La desventaja es que para usar el elemento N de la lista, debemos realizar N movimientos a través de la lista.
    Veamos un ejemplo de List:
  • Set<E>: No puede haber duplicados. Cada elemento debe ser único, por lo que si existe uno duplicado, no se agrega. Por regla general, cuando se redefine equals(), se debe redefinir hashCode(). Es necesario redefinir hashCode() cuando la clase definida será colocada en un HashSet. Los métodos add(o) y addAll(o) devuelven false si o ya estaba en el conjunto.
  • Queue<E>: Colección ordenada con extracción por el principio e inserción por el principio (LIFO – Last Input, First Output) o por el final (FIFO – First Input, First Output). Se permiten elementos duplicados. No da excepciones cuando la cola está vacía/llena, hay métodos para interrogar, que devuelven null. Los métodos put()/take() se bloquean hasta que hay espacio en la cola/haya elementos.
  • Map<K,V>: Un grupo de pares objeto clave-valor, que no permite duplicados en sus claves. Es quizás el más sencillo, y no utiliza la interfaz Collection. Los principales métodos son: put(), get(), remove().
    1. HashMap<K,V>: Se basa en una tabla hash, pero no es sincronizado.
    2. HashTable<K,V>: Es sincronizado, aunque que no permite null como clave.
    3. LinkedHashMap<K,V>: Extiende de HashMap y utiliza una lista doblemente enlazada para recorrerla en el orden en que se añadieron. Es ligeramente más rápida a la hora de acceder a los elementos que su superclase, pero más lenta a la hora de añadirlos.
    4. TreeMap<K,V>: Se basa en una implementación de árboles en el que ordena los valores según las claves. Es la clase más lenta.
    Ejemplo de Map:












Comentarios

Entradas populares