SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Downloaden Sie, um offline zu lesen
LENGUAJE DE PROGRAMACION JAVA 
Profesor: Vicentin, Ángel 
Alumna: Acevedo, Marta 
1º A Informática 
Trabajo Práctico Lenguaje de Programación
LENGUAJE DE PROGRAMACION JAVA 
Describir el funcionamiento básico de JAVA, los componentes básicos para desarrollar: 
1) Describir cuáles son los elementos de la programación orientada a objetos que maneja el JAVA. 
2) Como se clasifican las variables? Que son constantes? 
3) Cómo se administran los arreglos 
4) Cómo se clasifican y para qué sirven los operadores? 
5) Cómo se codifican las sentencias de bifurcación y repetición en JAVA? 
6) Describa cómo se tratan las funciones y procedimientos en JAVA.
LENGUAJE DE PROGRAMACION JAVA 
Desarrollo: 
1-Describir el funcionamiento de Java: 
Java es un lenguaje de programación propósito general, concurrente orientado a objetos y basado en clases que fue diseñado específicamente para tener tan pocas dependencias de implementación como fuera posible. Su intención es permitir que los desarrolladores aplicación escriban el programa una vez y lo ejecuten en cualquier dispositivo. 
Los componentes básicos son dos: 
El IDE: entorno de desarrollo integrado 
EL COMPILADOR: 
El IDE: 
Es un conjunto de herramientas para programador. Puede dedicarse en exclusiva a solo lenguaje de programación o bien, poder utilizarse para varios. 
Un IDE es un entorno de programación que ha sido empaquetado como programa aplicación, es decir consiste en un editor de códigos, compilador, depurador y constructor de interfaz grafica GUI. Los IDEs pueden ser aplicaciones por si solas o ser parte de aplicaciones existentes. 
COMPILADOR: 
Un compilador Java, es un programa que transforma el código fuente escrito en Java a un código neutral a la plataforma conocido como BYTECODE. Aunque existen compiladores que transforma el código fuente Java algún nativo. La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa los objetos en sus interacciones, para diseñar aplicaciones y programas informáticos. Está basado en varias técnicas, incluyendo herencia, polimorfismo, y encapsulamiento. 
La herencia es, después de la agregación o composición, el mecanismo más utilizado para alcanzar algunos de los objetivos más preciados en el desarrollo software como lo son la reutilización y extensibilidad. A través de ella los diseñadores pueden crear nuevas clases partiendo de una clase o jerarquía preexistente (ya comprobadas y verificadas) evitando con ello el rediseño, la modificación verificación de parte ya implementada. La herencia facilita la creación de objetos a partir otros ya existentes e implica que una subclase obtiene todo el comportamiento (métodos) y eventualmente los atributos (variables) de su superclase.
LENGUAJE DE PROGRAMACION JAVA 
El polimorfismo se refiere a la propiedad por que es posible enviar mensajes sintácticamente iguales a objetos de tipos distintos. El único requisito que deben cumplir los objetos que se utilizan de manera polimórfica es saber responder al mensaje les envía. La apariencia del código puede ser muy diferente dependiendo del lenguaje que se utilice, más allá de las obvias diferencias sintácticas. El encapsulamiento es el ocultamiento del estado, es decir, de los datos miembro un objeto de manera que sólo se pueda cambiar mediante las operaciones definidas para ese objeto. Cada objeto está aislado del exterior, es un módulo natural, y la aplicación entera se reduce a un agregado o rompecabezas de objetos. El aislamiento protege a los datos asociados de un objeto contra su modificación por quien no tenga derecho a acceder ellos, eliminando efectos secundarios e interacciones. De esta forma el usuario de la clase puede obviar implementación los métodos y propiedades para concentrarse sólo en cómo usarlos. Por otro lado se evita que el usuario pueda cambiar su estado de maneras imprevistas e incontroladas. Variables Las variables son una de las características fundamentales los lenguajes programación, permiten acceder a la memoria para almacenar y recuperar los datos con los que nuestros programas van a trabajar. Son por tanto el mecanismo lenguajes de programación ponen a nuestra disposición para acceder la memoria. Se trata de un mecanismo lo más sencillo, sólo tenemos que dar un nombre a nuestras variables, a partir de ese momento el compilador traducirá forma automática nombre en un acceso a memoria. Por ejemplo: //Almacenamos un dato en memoria referenciado por el nombre edad edad = 5; //Recuperamos el dato almacenado y lo modificamos edad = edad + 1; Java es un lenguaje tipado y nos obliga a declarar nuestras variables antes de poder hacer uso de ellas, con esta declaración le indicamos al compilador el espacio en memoria que debe de reservar para almacenar la información. Por ejemplo: String cliente; Aquí estamos reservando memoria para una variable de tipo String y la identificamos con el nombre “cliente”. De ahora en adelante si programa hablamos de cliente, estamos haciendo referencia a esa porción de memoria y al valor que contiene. Podemos asignarle algún valor en el momento de declarar una variable. Por ejemplo: String cliente = "Isaac Newton";
LENGUAJE DE PROGRAMACION JAVA 
Aquí reservamos memoria para una cadena de caracteres y le asignamos el valor "Isaac Newton". También podemos declararla y en otro lugar del programa fijarle un valor : String cliente; // declaración ... // El programa sigue cliente = "Isaac Newton"; // le damos un valor La sentencia para declarar una variable se resume como: Tipo_Dato Nombre_Variable [= Valor]; Definimos el tipo de dato, nombre y opcionalmente su valor. Para ver como se utilizan las variables, podemos modificar el primer programa. Agregaremos una variable que contenga el texto se mostrará en pantalla: {{Java/!|public}} {{Java/!|class}} HolaMundo { {{Java/!|public}} {{Java/!|static}} {{Java/!|void}} main(String[] args){ String saludo = "¡Hola Mundo!"; System.out.println( saludo ); } } Definimos una variable de tipo String con el nombre "saludo". En la declaración de variable también la inicializamos con el valor "¡Hola mundo!". Luego llamamos al método que imprimirá el texto en la pantalla haciendo referencia a variable. En programa original, explícitamente introducíamos el texto que se mostraría, ahora solo escribimos el nombre de la variable. Cuando el intérprete se encuentre con esta variable, tendrá que buscar el valor almacene en la memoria para mostrarlo por pantalla. Un variable puede cambiar su valor en el transcurso del programa. {{Java/!|public}} {{Java/!|class}} UsoVariables{ {{Java/!|public}} {{Java/!|static}} {{Java/!|void}} main(String args[]){ String saludo; saludo = "Hola Mundo!"; System.out.println( saludo ); saludo = ("Estoy utilizando variables"); System.out.println( saludo ); } }
LENGUAJE DE PROGRAMACION JAVA 
Siempre debemos inicializar una variable. Al compilar el programa, compilador de Java leerá el contenido de la variable y siempre verificará que tenga un valor. De lo contrario el programa no compilará y mostrará un error. Un ejemplo de este caso: if (x > 0) { saludo = "Hola Mundo!!!"; } System.out.println( saludo ); En este caso el compilador mostrará un mensaje de error indicando que la variable x no se ha inicializado con ningún valor. Como se puede observar esta variable solo inicia cuando se cumple una condición, sin embargo indica que va a ser utilizada siempre. El compilador detecta este posible error. Un ejemplo de solución sería: int x = 1; if (x > 0) { saludo = "Hola Mundo!"; } System.out.println( saludo ); Agregando estas líneas al final del código de la clase UsoVariables nos mostraría lo siguiente a la salida: Hola Mundo! Estoy utilizando variables Hola Mundo!!! 2 ._Nombre de la Variable El nombre debe ser único en el contexto del programa. Además seguir las siguientes reglas: El nombre debe ser único en el contexto del programa. Además seguir las siguientes reglas:  No puede ser una palabra reservada del lenguaje o un literal booleano (true o false)  Puede contener cualquier carácter Unicode, pero no puede comenzar con un número  No debe contener los símbolos que se utilicen como operadores ( + , - , ?, etc ) Por convención, los nombres de variables comienzan con una letra en minúscula. Si un nombre consiste en más de una palabra, se escribirá sin espacios entre ellas y cada palabra (salvo la primera) comenzará con una letra mayúscula (por ejemplo : estaBienEsteNombre )
LENGUAJE DE PROGRAMACION JAVA 
 No puede ser una palabra reservada del lenguaje o un literal booleano (true o false)  Puede contener cualquier carácter Unicode, pero no puede comenzar con un número  No debe contener los símbolos que se utilicen como operadores ( + , - , ?, etc. ) Por convención, los nombres de variables comienzan con una letra en minúscula. Si un nombre consiste en más de una palabra, se escribirá sin espacios entre ellas y cada palabra (salvo la primera) comenzará con una letra mayúscula por ejemplo: estaBienEsteNombre ) 
TIPOS DE DATOS (VARIABLES) EN JAVA. 
Los primeros lenguajes de programación no usaban objetos, solo variables. Una variable podríamos decir que es un espacio de la memoria del ordenador a la que asignamos un contenido que puede ser un valor numérico (sólo números, con su valor de cálculo) o de tipo carácter o cadena de caracteres (valor alfanumérico que constará sólo de texto o de texto mezclado con números). 
Como ejemplo podemos definir una variable a que contenga 32 y esto lo escribimos como a = 32. Posteriormente podemos cambiar el valor de a y hacer a = 78. O hacer “a” equiva- lente al valor de otra variable “b” así: a = b. 
Dado que antes hemos dicho que un objeto también ocupa un espacio de memoria: ¿en qué se parecen y en qué se diferencia un objeto de una variable? Consideraremos que las variables son entidades elementales: un número, un carácter, un valor verdadero o falso… mientras que los objetos son entidades complejas que pueden estar formadas por la agrupación de muchas variables y métodos. Pero ambas cosas ocupan lo mismo: un espacio de memoria (que puede ser más o menos grande).
LENGUAJE DE PROGRAMACION JAVA 
En los programas en Java puede ser necesario tanto el uso de datos elementales como de datos complejos. Por eso en Java se usa el término “Tipos de datos” para englobar a cual- quier cosa que ocupa un espacio de memoria y que puede ir tomando distintos valores o características durante la ejecución del programa. Es decir, en vez de hablar de tipos de variables o de tipos de objetos, hablaremos simplemente de tipos de datos. Sin embargo, a veces “coloquialmente” no se utiliza la terminología de forma estricta: puedes encontrarte textos o páginas web donde se habla de una variable en alusión a un objeto. 
En Java diferenciamos dos tipos de datos: por un lado, los tipos primitivos, que se corres- ponden con los tipos de variables en lenguajes como C y que son los datos elementales que hemos citado. Por otro lado, los tipos objeto (que normalmente incluyen métodos). 
Veamos los tipos de datos en Java sobre un esquema de síntesis: Cada variable debe tener un tipo de dato predefinido. Esto determina el rango valores que puede almacenar y qué operaciones se pueden realizar así como el resultado que te dará. Por ejemplo, una variable de tipo entero puede almacenar números sin decimales y puede realizar operaciones aritméticas, pero no contener palabras. Existen dos categorías de variables: las de tipo primitivo y referenciadas. Una variable de tipo primitivo accede al valor asignado directamente. Las referenciadas acceden a través de un puntero, es decir, no almacenan valor sino una dirección memoria. Estas últimas son utilizadas por las matrices, clases y interfaces. Un objeto es una cosa distinta a un tipo primitivo, aunque “porten” la misma información. Tener siempre presente que los objetos en Java tienen un tipo de tratamiento y los tipos primitivos, otro. Que en un momento dado contengan la misma información no significa en ningún caso que sean lo mismo. Iremos viendo las diferencias entre ambos poco a poco. De momento, recuerda que el tipo primitivo es algo elemental y el objeto complejo. Supón una cesta de manzanas en la calle: algo elemental. Supón una cesta de manzanas dentro nave espacial (considerando el conjunto nave + cesta): algo complejo. La información que portan puede ser la misma, pero no son lo mismo. ¿Para qué tener esa aparente duplicidad entre tipos primitivos y envoltorio? Esto es una cuestión que atañe a la concepción del lenguaje de programación. Tener en cuenta una cosa: un tipo primitivo es dato elemental y carece de métodos, mientras que un objeto es una entidad compleja y dispone de métodos. Por otro lado, de acuerdo con la especificación Java, es posible que necesitemos utilizar dentro un programa objeto que “porte” como contenido número entero. Desde el momento en que sea necesario un objeto habremos de pensar en un envoltorio, por ejemplo Integer. Inicialmente nos puede costar un poco distinguir cuándo usar tipo primitivo y cuándo un envoltorio en situaciones las que ambos sean válidos. Seguiremos esta regla: usaremos por norma general tipos primitivos. Cuando para la
LENGUAJE DE PROGRAMACION JAVA 
estructura de datos o el proceso a realizar sea necesario un objeto, usaremos envoltorio. Los nombres de tipos primitivos y envoltorio se parecen mucho. En realidad, excepto entre int e Integer y char Character, la diferencia se limita a que en un caso la inicial es minúscula (por ejemplo double) y en el otro mayúscula Double). Esa similitud puede confundirnos inicialmente, pero hemos de tener muy claro qué es cada tipo y cuándo utilizar cada tipo. Una cadena de caracteres es un objeto. El tipo String en Java nos permite crear objetos que contienen texto (palabras, frases, etc.). El debe ir siempre entre comillas. Muchas veces se cree erróneamente que el tipo String es un primitivo por analogía con otros lenguajes donde String funciona como una variable elemental. En Java no es así. Hay distintos tipos primitivos enteros. ¿Cuál usar? Por norma general usaremos el tipo int. Para casos en los que el entero pueda ser muy grande usaremos long. Los tipos byte y short los usaremos cuando tengamos un mayor dominio del lenguaje. 
DECLARACIÓN E INICIALIZACIÓN DE VARIABLES EN JAVA. 
Vamos a ver ejemplos de uso de tipos de datos en Java. Para ello nos valdremos primera- mente de algunos tipos primitivos usados habitualmente como son int (entero), String (ca- dena de caracteres), boolean (valor booleano verdadero o falso), float (decimal simple), etc. 
Una constante es una variable del sistema que mantiene un valor inmutable a lo largo de toda la vida del programa. Las constantes en Java se definen mediante el modificador final. 
La estructura sería: 
1. static final nombreConstante = valor; 
De esta forma si queremos definir las constantes DIAS_SEMANA ó DIAS_LABORABLES, que sabemos que son variables que no cambiarán su valor a lo largo del programa, gene- raremos el siguiente código: 
1. static final int DIAS_SEMANA = 7; 
2. static final int DIAS_LABORABLES = 5; 
Si queremos utilizar una constante Java, simplemente deberemos de utilizar su nombre. Así, si queremos utilizar las anteriores constantes, lo haremos de la siguiente forma: 
1. System.out.println("El número de días de la semana son " + DIAS_SEMANA); 
2. System.out.println("El número de días laborables de la semana son " + DIAS_LA- BORABLES); 
El código completo del programa de constantes en Java será el siguiente: 
1. public class ConstanteEnJava { 
2. 
3. static final int DIAS_SEMANA = 7; 
4. static final int DIAS_LABORABLES = 5;
LENGUAJE DE PROGRAMACION JAVA 
5. 
6. public static void main(String[] args) { 
7. 
8. System.out.println("El número de días de la semana son " + DIAS_SEMANA); 
9. System.out.println("El número de días laborables de la semana son " + DIAS_LA- BORABLES); 
10. 
11. } 
12. } 
En este caso las hemos declarado static en la clase. Si bien podrían ir dentro del método main sin ser static: 
1. public class ConstanteEnJava { 
2. 
3. public static void main(String[] args) { 
4. 
5. final int DIAS_SEMANA = 7; 
6. final int DIAS_LABORABLES = 5; 
7. 
8. System.out.println("El número de días de la semana son " + DIAS_SEMANA); 
9. System.out.println("El número de días laborables de la semana son " + DIAS_LA- BORABLES); 
10. 
11. } 
12. } 
Aquí mostramos ejemplos de uso de tipos de datos en Java: 
DECLARACIÓN E INICIALIZACIÓN DE VARIABLES EN JAVA. 
Vamos a ver ejemplos de uso de tipos de datos en Java. Para ello nos valdremos primera- mente de algunos tipos primitivos usados habitualmente como son int (entero), String (ca- dena de caracteres), boolean (valor booleano verdadero o falso), float (decimal simple), etc. 
Aquí mostramos ejemplos de uso de tipos de datos en Java: 
/* Ejemplo - aprenderaprogramar.com */
LENGUAJE DE PROGRAMACION JAVA 
public class Ejemplo2 { private int precio; // Las instrucciones y declaraciones finalizan con ; private int importe_acumulado; private String profesor; private String aula; private int capacidad; private boolean funciona; private boolean esVisible; private float diametro; private float peso; private short edad; private long masa; private char letra1; } //Cierre de la clase
LENGUAJE DE PROGRAMACION JAVA
LENGUAJE DE PROGRAMACION JAVA 
Este esquema no es necesario aprendérselo de memoria en todos sus detalles, aunque sí lo iremos memorizando poco a poco a medida que lo utilicemos, por lo menos hasta tener en nuestra cabeza los nombres de todos los tipos primitivos y envoltorio y sus característi- cas (si son objetos o no y su rango aproximado). A continuación mostramos el mismo es- quema en formato de tabla: 
TIPOS DE DATOS EN JAVA NOMBRE TIPO OCUPA RANGO APROXIMADO TIPOS PRIMITI- VOS (sin métodos; no son objetos; no necesitan una invocación para ser crea- dos) byte Entero 1 byte -128 a 127 short Entero 2 bytes -32768 a 32767 int Entero 4 bytes 2*109 long Entero 8 bytes Muy grande float Decimal simple 4 bytes Muy grande double Decimal doble 8 bytes Muy grande char Carácter simple 2 bytes --- boolean Valor true o false 1 byte --- TIPOS OB- JETO (con métodos, necesitan una invocación para ser creados) Tipos de la biblio- teca estándar de Java String (cadenas de texto) Muchos otros (p.ej. Scanner, TreeSet, ArrayList…) Tipos definidos por el programa- dor / usuario Cualquiera que se nos ocurra, por ejem- plo Taxi, Autobus, Tranvia arrays Serie de elementos o formación tipo vector o matriz. Lo consideraremos un objeto especial que carece de métodos.
LENGUAJE DE PROGRAMACION JAVA 
Tipos envoltorio o wrapper (Equiva- lentes a los tipos primitivos pero como objetos.) Byte Short Integer Long Float Double Character Boolean 
3 ADMINISTRACION DE UN ARREGLO: 
Arrays 
El array es una de las estructuras de datos más ampliamente utilizada por su flexifilidad para derivar en complejas estructuras de datos y su simplicidad. Empezaremos con una definición: un array es una secuencia de elementos, donde cada elemento (un grupo de bytes de memoria que almacenan un único ítem de datos) se asocia con al menos un indice (entero no-negativo). Esta definición lanza cuatro puntos interesantes: 
 Cada elemento ocupa el mismo número de bytes; el número exacto depende del tipo de datos del elemento. 
 Todos los elementos son del mismo tipo. 
 Tendemos a pensar que los elementos de un array ocupan localizaciones de me- moria consecutivas. Cuando veamos los arrays bi-dimensionales descubrirá que no es siempre así. 
 El número de índices asociados con cada elemento es la dimensión del array 
Nota: 
Esta sección se enfoca exclusivamente en arrays de una y dos dimensiones porque los arrays de mas dimensiones no se utilizan de forma tan frecuente. 
Arrays 
El tipo de array más simple tiene una dimensión: cada elemento se asocia con un único índice. Java proporciona tres técnicas para crear un array de una dimensión: usar sólo un inicializador, usar sólo la palabra clave new, y utilizar la palabra clave new con un inicializa- dor.
LENGUAJE DE PROGRAMACION JAVA 
Utilizar sólo un Inicializador 
Utilizando un inicializador se puede utilizar cualquiera de estas dos sintaxis: 
type variable_name '[' ']' [ '=' initializer ] ';' 
type '[' ']' variable_name [ '=' initializer ] ';' 
Donde el inicializador tiene la siguiente sintaxis: 
'{' initial_value1 ',' initial_value2 ',' ... '}' 
El siguiente fragmento ilustra como crear un array de animales: 
// Create an array of animals. 
String animals [] = { "Tiger", "Zebra", "Kangaroo" }; 
Utilizar sólo la Palabra Clave "new" 
Utilizando la palabra clave new se puede utilizar cualquiera de estas dos sintaxis: 
type variable_name '[' ']' '=' 'new' type '[' integer_expression ']' ';' 
type '[' ']' variable_name '=' 'new' type '[' integer_expression ']' ';' 
Para ambas sintaxis: 
 variable_name especifica el nombre de la variable del array uni-dimensional 
 type especifica el tipo de cada elemento. Como la variable del array uni-dimensional contiene una referencia a un array uni-dimensional, el tipo es type [] 
 La palabra clave new seguida por type y seguida por integer_expression entre cor- chetes cuadrados ([]) específica el número de elementos. new asigna la memoria para los elementos del array uni-dimensional y pone ceros en todos los bits de los bytes de cada elementos, lo que significa que cada elemento contiene un valor por defecto que interpretamos basándonos en su tipo. 
 = asigna la referencia al array uni-dimensional a la variable variable_name. 
Truco: 
Los desarrolladores Java normalmente situan los corchetes cuadrados después del tipo (int [] test_scores) en vez de después del nombre de la variable (int test_scores []) cuando declaran una variable array. Mantener toda la información del tipo en un único lugar mejora la lectura del código. 
El siguiente fragmento de código utiliza sólo la palabra clave new para crear un array uni- dimensional que almacena datos de un tipo primitivo: 
int [] test_scores = new int [4]; 
int [] test_scores declara una variable array uni-dimensional (test_scores) junto con su tipo de variable (int []). El tipo de referencia int [] significa que cada elemento debe contener un ítem del tipo primitivo entero. new int [4] crea una arra uni-dimensional asignando memoria para cuatro elementos enteros consecutivos. Cada elemento contiene un único entero y se inicializa a cero. El operador igual a (=) asigna la referencia del array uni-dimensional a test_scores. La siguiente figura ilustra los elementos y la variable array uni-dimensional resultante:
LENGUAJE DE PROGRAMACION JAVA 
Cuidado: 
Cuando se crea un array uni-dimensional basado en un tipo primitivo, el compilador re- quiere que aparezca la palabra clave que indica el tipo primitivo en los dos lados del ope- rador igual-a. De otro modo, el compilador lanzará un error. Por ejemplo, int [] test_scores = new long [20]; es ilegal porque las palabras claves int y long representan tipos primitivos incompatibles. 
Los arrays uni-dimensionales de tipos primitivos almacenan datos que son valores primiti- vos. Por el contrario, los arrays uni-dimensiones del tipo referencia almacenan datos que son referencias a objetos. El siguiente fragmento de código utiliza la palabra clave new para crear una pareja de arrays uni-dimensionales que almacenan datos basados en tipo refe- rencia: 
Clock [] c1 = new Clock [3]; 
Clock [] c2 = new AlarmClock [3]; 
Clock [] c1 = new Clock [3]; declara una variable array uni-dimensional, (c1) del tipo Clock [], asigna memoria para un array uni-dimensional Clock que consta de tres elementos con- secutivos, y asigna la referencia del array Clock a c1. Cada elemento debe contener una referencia a un objeto Clock (asumiendo que Clock es una clase concreta) o un objeto creado desde una subclase de Clock y lo inicializa a null. 
Clock [] c2 = new AlarmClock [3]; se asemeja a la declaración anterior, excepto en que se crea un array uni-dimensional AlarmClock, y su referencia se asgina a la variable Clock [] de nombre c2. (Asume AlarmClock como subclase de Clock.) 
Utilizar la palabra clave "new" y un Inicializador 
Utilizar la palabra clave new con un inicializador requiere la utilización de alguna de las siguientes síntaxis: 
type variable_name> '[' ']' '=' 'new' type '[' ']' initializer ';' 
type '[' ']' variable_name '=' 'new' type '[' ']' initializer ';'
LENGUAJE DE PROGRAMACION JAVA 
Donde initializer tiene la siguientes sintaxis: 
'{' [ initial_value [ ',' ... ] ] '}' 
 variable_name especifica el nombre de la variable del array uni-dimensional 
 type especifica el tipo de cada elemento. Como la variable del array uni-dimensional contiene una referencia a un array uni-dimensional, el tipo es type [] 
 La palabra clave new seguida por type y seguida por corchetes cuadrados ([]) va- cíos, seguido por inicializer. No se necesita especificar el número de elementos en- tre los corchetes cuadrados porque el compilador cuenta el número de entradas en el inicializador. new asigna la memoria para los elementos del array uni-dimensional y asigna cada una de las entradas del inicializador a un elemento en orden de iz- quierda a derecha. 
 = asigna la referencia al array uni-dimensional a la variable variable_name. 
4-OPERADORES: 
Operadores en C 
* multiplicación 
/ división 
Se evalúan primero, si hay muchas, se evaluan de izquierda a derecha 
+ suma 
- resta 
Se evalúan después, si hay muchas, se evaluan de izquierda a derecha 
% módulo 
Residuo de la división entera 
Prioridad de Operadores Aritméticos: 
Todas las expresiones con paréntesis anidados se evalúan de dentro a afuera, el paréntesis más interno se evalúa primero. Dentro de una misma expresión los operadores se evalúan en el siguiente orden: 
1. ^ Exponentes 
2. * Multiplicación, / División, % Módulo 
3. + Suma, - Resta 
Los Operadores en na misma expresión con igual nivel de prioridad, se evalúan de izquierda a derecha 
Algebra Estamos acostumbrados a representar algebraicamente una ecuación, pero en la compu- tadora es diferente, para ello podemos utilizar los paréntesis, de lo contrario el resultado puede ser diferente
LENGUAJE DE PROGRAMACION JAVA 
Ejemplos: 
m=(a+b+c+d+e)/5 
m=a+b+c+d+e/5 
Ecuación de una línea recta 
y=mx+b 
y=m*x+b 
Ejercicio: 
z=prq+w/x-y 
Revisemos las siguientes ecuaciones 
7+5-6 
1 
12-6 
2 
6 
9+7*8-36/5 
1 
9+56-36/5 
2 
9+56-7.2 
3 
65-7.2 
4 
57.8 
Operadores de igualdad 
Algebraico 
= igual = diferente de 
En Java 
== igual != diferente de 
Ejemplo 
x==y x!=y 
igual diferente de 
Operadores de relación
LENGUAJE DE PROGRAMACION JAVA 
< menor que 
> mayor que 
<= menor o igual que 
>= mayor o igual que 
Variable 
Es un espacio en la memoria de la computadora que permite almacenar tempo- ralmente un dato durante la ejecución de un proceso, su contenido puede cam- biar durante la ejecución del programa. Para poder reconocer una variable en la memoria de la computadora, es necesario darle un nombre con el cual poda- mos identificarla dentro de un algoritmo. 
Constante 
Es un dato numérico o alfanumérico que no cambia durante la ejecución del programa. Ejemplo: pi = 3.1416 
Ejemplo: 
area = pi * radio ^ 2 Las variables son : el radio, el area y la constate es pi 
Por su contenido Variables Numéricas: Son aquellas en las cuales se alma- cenan valores numéricos, positivos o negativos, es decir almacenan números del 0 al 9, signos (+ y -) y el punto decimal. Ejemplo: iva = 0.15 pi = 3.1416 costo = 2500 
Variables Lógicas: Son aquellas que solo pueden tener dos valores (cierto o falso) estos representan el resultado de una comparación entre otros datos. 
Variables Alfanuméricas: Esta formada por caracteres alfanuméricos (letras, números y caracteres especiales). Ejemplo: letra = ’a’ apellido = ’lopez’ direc- cion = ’Av. Libertad #190’ 
Por su uso Variables de Trabajo: Variables que reciben el resultado de una operación matemática completa y que se usan normalmente dentro de un pro- grama. Ejemplo: Suma = a + b /c 
Contadores: Se utilizan para llevar el control del numero de ocasiones en que se realiza una operación o se cumple una condición. Con los incrementos ge- neralmente de uno en uno. 
Acumuladores: Forma que toma una variable y que sirve para llevar la suma acumulativa de una serie de valores que se van leyendo o calculando progresi- vamente. 
Expresiones 
Las expresiones son combinaciones de constantes, variables, símbolos de ope- ración, paréntesis y nombres de funciones especiales. 
Por ejemplo: 
q= a + (b + 3) / c
LENGUAJE DE PROGRAMACION JAVA 
Cada expresión toma un valor que se determina tomando los valores de las variables y constantes implicadas y la ejecución de las operaciones indicadas. Una expresión consta de operadores y operandos. Según sea el tipo de datos que manipulan, se clasifican las expresiones en: Aritméticas Relacionales Lógi- cas 
5-SENTENCIAS DE BIFURCACION Y REPETICION 
Estructuras de Programación 
Ejecución Secuencial 
Las instrucciones dentro de un programa se ejecutan una a una en el orden en que están escritas 
A esto se le llama Ejecución Secuencial 
Estructuras de Selección 
Selección if, realiza una acción si la condición es verdadera (selección simple) 
Selección if…..else, realiza una acción si la condición es verdadera y realiza una acción diferente si la condición es falsa (selección doble) 
Estructura de Selección Múltiple 
Selección switch, realiza muchas opciones dependiendo del valor de la expresión (selec- ción múltiple) 
Estructuras de Repetición 
 while 
 do…..while 
 for 
Instrucción de Selección if 
Esta estructura permite elegir entre diversos cursos de acción 
Ej. Pseudocodigo 
if calificación del estudiante es mayor o igual que 60 
Imprime “Aprobado” 
Programando en C 
if(calificacion>=60) 
printf(“Aprobadon”);
LENGUAJE DE PROGRAMACION JAVA 
Instrucción de Selección if……else 
Realiza la acción indicada solo si la condición es verdadera, de lo con- trario realiza la siguiente acción 
if calificación del estudiante es mayor o igual que 60 
Imprime “Aprobado” 
else 
Imprime “Reprobado” 
Instrucción de Selección if……else 
Programando en C 
if(calificacion>=60) printf(“Aprobadon”); Else printf(“Reprobadon”); 
Problema 
Elabora el Pseudocódigo que imprima una A para las calificaciones su- periores a 90, B para las calificaciones mayores o iguales que 80, C para las calificaciones mayores o iguales que 70, D para las calificacio- nes mayores o iguales que 60 y F para las calificaciones restantes 
Pseudocódigo 
if calificación del estudiante es mayor o igual que 90 
Imprime “A” 
else 
if calificación del estudiante es mayor o igual que 80 
Imprime “B” 
if calificación del estudiante es mayor o igual que 70 
Imprime “C” 
else 
if calificación del estudiante es mayor o igual que 60 
Imprime “D” 
else 
Imprime “F” 
Programando en C 
if (calificacion>=90) 
printf(“An”); 
else if (calificacion>=80)
LENGUAJE DE PROGRAMACION JAVA 
printf(“Bn”); 
else if (calificacion>=70) 
printf(“Cn”); 
else if (calificacion>=60) 
printf(“Dn”); 
else 
printf(“Fn”); 
Estructura de Selección Múltiple 
Diferencias entre if...else if y switch 
Aunque con la estructura if ... else if se pueden realizar comprobaciones múltiples, en ocasiones no es muy elegante, ya que el código puede ser difícil de seguir y puede confundir incluso al autor transcurrido un tiempo 
Java tiene incorporada una sentencia de bifurcación múltiple llamada switch 
La computadora comprueba una variable sucesivamente frente a una lista de constantes enteras o de carácter. 
Después de encontrar una coincidencia, la computadora ejecuta la sen- tencia o bloque de sentencias que se asocian con la constante. 
switch…..case y default 
Consiste en una serie de etiquetas case y el caso opcional como default 
El valor de la expresión debe de ser de tipo int o char, pero nunca de tipo double o float 
Evaluación del switch 
La expresión de control se evalúa y compara con cada una de las etiquetas case 
Sintaxis 
Switch (variable) 
{ 
case etiqueta1:conjunto de sentencias; 
break; 
case etiqueta2:conjunto de sentencias; 
break; 
. 
. 
. 
default:sentencias; 
break; 
} 
default
LENGUAJE DE PROGRAMACION JAVA 
Funciona cuando no existe la selección adecuada dentro de las senten- cias case, contiene un valor por omisión 
Ej. 
default:printf(“El valor que ingresó no corresponde a ningún mes”); 
Limitaciones de switch con respecto a if 
Sólo se tiene posibilidad de revisar una sola variable. 
Con switch sólo se puede comprobar por igualdad, mientras que con if puede ser con cualquier operador relacional. 
No se puede probar más de una constante por case 
switch (letra) 
{ 
case ‘a’:printf(“Es una vocal”); 
break; 
case ‘e’:printf(“Es una vocal”); 
break; 
case ‘i’:printf(“Es una vocal”); 
break; 
. 
. 
. 
default:printf(“La letra no es una vocal”); 
} 
//Agrega el codigo necesario para las vocales faltantes 6 Describa cómo se tratan las funciones y procedimientos en JAVA. 
Una función es un conjunto de instrucciones que ejecutan una rutina y devuelven un resultado. El resultado puede depender de parámetros entrada. 
Una función se construye de la siguiente manera: 
tipo_resultado nombre_función (tipo_parámetro nombre_parámetro, ... ) { 
sentencia1; 
sentencia2; 
...
LENGUAJE DE PROGRAMACION JAVA 
sentenciaN; 
} 
Una función puede o no devolver un resultado, según cómo haya sido declarado. La siguiente función no devuelve nada, puesto que se pone void delante, al declararla 
// Esta función no devuelve nada 
void funcion ( /* parámetros */) 
Sin embargo, esta otra sí devuelve un valor entero 
// Esta función devuelve un valor entero 
int funcion ( /* parámetros */ ) 
Si la función devuelve algún tipo de resultado, es obligatorio en java poner el código la función return valordevuelto. 
Si dentro de la función hay condicionales, es también obligatorio que en todos los posibles caminos por los que se termine el código de la función, ponga return y valor devuelto. 
Lógicamente, cuando la función devuelve el resultado, finaliza ejecución de misma, y de cualquier estructura de control iterativa (for, while...) aunque no se haya cumplido su condición de salida.

Weitere ähnliche Inhalte

Ähnlich wie Trabajo practico de lenguaje java.Conceptos. Estructuras. Programacion.

Ähnlich wie Trabajo practico de lenguaje java.Conceptos. Estructuras. Programacion. (20)

Lenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetosLenguajes de programación orientados a objetos
Lenguajes de programación orientados a objetos
 
Programacion java basica
Programacion java basicaProgramacion java basica
Programacion java basica
 
Fondo1 (2)
Fondo1 (2)Fondo1 (2)
Fondo1 (2)
 
01 fundamentos-java
01 fundamentos-java01 fundamentos-java
01 fundamentos-java
 
Tipos de datos
Tipos de datosTipos de datos
Tipos de datos
 
Javares
JavaresJavares
Javares
 
3 d cruz_borges_aime_b1examen
3 d cruz_borges_aime_b1examen3 d cruz_borges_aime_b1examen
3 d cruz_borges_aime_b1examen
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Java
 
Raptor comandos
Raptor comandosRaptor comandos
Raptor comandos
 
Fund progbd 3_u1_lenguajeprogramacionjava1
Fund progbd 3_u1_lenguajeprogramacionjava1Fund progbd 3_u1_lenguajeprogramacionjava1
Fund progbd 3_u1_lenguajeprogramacionjava1
 
Comandos de raptor
Comandos de raptorComandos de raptor
Comandos de raptor
 
Java apesteguia
Java apesteguiaJava apesteguia
Java apesteguia
 
Programación en java
Programación en javaProgramación en java
Programación en java
 
Introducción a JAVA
Introducción a JAVAIntroducción a JAVA
Introducción a JAVA
 
Introduccion actionscript
Introduccion actionscriptIntroduccion actionscript
Introduccion actionscript
 
JAVA
JAVAJAVA
JAVA
 
Curso de Introducción a Java SE ppt.pdf
Curso de Introducción a Java SE ppt.pdfCurso de Introducción a Java SE ppt.pdf
Curso de Introducción a Java SE ppt.pdf
 
Introducción a la algoritmia
Introducción a la algoritmiaIntroducción a la algoritmia
Introducción a la algoritmia
 
Introducción a la algoritmia
Introducción a la algoritmiaIntroducción a la algoritmia
Introducción a la algoritmia
 
Introduccion java
Introduccion javaIntroduccion java
Introduccion java
 

Kürzlich hochgeladen

Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptxolgakaterin
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 

Kürzlich hochgeladen (20)

Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Ecosistemas Natural, Rural y urbano 2021.pptx
Ecosistemas Natural, Rural y urbano  2021.pptxEcosistemas Natural, Rural y urbano  2021.pptx
Ecosistemas Natural, Rural y urbano 2021.pptx
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
Power Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptxPower Point: Fe contra todo pronóstico.pptx
Power Point: Fe contra todo pronóstico.pptx
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 

Trabajo practico de lenguaje java.Conceptos. Estructuras. Programacion.

  • 1. LENGUAJE DE PROGRAMACION JAVA Profesor: Vicentin, Ángel Alumna: Acevedo, Marta 1º A Informática Trabajo Práctico Lenguaje de Programación
  • 2. LENGUAJE DE PROGRAMACION JAVA Describir el funcionamiento básico de JAVA, los componentes básicos para desarrollar: 1) Describir cuáles son los elementos de la programación orientada a objetos que maneja el JAVA. 2) Como se clasifican las variables? Que son constantes? 3) Cómo se administran los arreglos 4) Cómo se clasifican y para qué sirven los operadores? 5) Cómo se codifican las sentencias de bifurcación y repetición en JAVA? 6) Describa cómo se tratan las funciones y procedimientos en JAVA.
  • 3. LENGUAJE DE PROGRAMACION JAVA Desarrollo: 1-Describir el funcionamiento de Java: Java es un lenguaje de programación propósito general, concurrente orientado a objetos y basado en clases que fue diseñado específicamente para tener tan pocas dependencias de implementación como fuera posible. Su intención es permitir que los desarrolladores aplicación escriban el programa una vez y lo ejecuten en cualquier dispositivo. Los componentes básicos son dos: El IDE: entorno de desarrollo integrado EL COMPILADOR: El IDE: Es un conjunto de herramientas para programador. Puede dedicarse en exclusiva a solo lenguaje de programación o bien, poder utilizarse para varios. Un IDE es un entorno de programación que ha sido empaquetado como programa aplicación, es decir consiste en un editor de códigos, compilador, depurador y constructor de interfaz grafica GUI. Los IDEs pueden ser aplicaciones por si solas o ser parte de aplicaciones existentes. COMPILADOR: Un compilador Java, es un programa que transforma el código fuente escrito en Java a un código neutral a la plataforma conocido como BYTECODE. Aunque existen compiladores que transforma el código fuente Java algún nativo. La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa los objetos en sus interacciones, para diseñar aplicaciones y programas informáticos. Está basado en varias técnicas, incluyendo herencia, polimorfismo, y encapsulamiento. La herencia es, después de la agregación o composición, el mecanismo más utilizado para alcanzar algunos de los objetivos más preciados en el desarrollo software como lo son la reutilización y extensibilidad. A través de ella los diseñadores pueden crear nuevas clases partiendo de una clase o jerarquía preexistente (ya comprobadas y verificadas) evitando con ello el rediseño, la modificación verificación de parte ya implementada. La herencia facilita la creación de objetos a partir otros ya existentes e implica que una subclase obtiene todo el comportamiento (métodos) y eventualmente los atributos (variables) de su superclase.
  • 4. LENGUAJE DE PROGRAMACION JAVA El polimorfismo se refiere a la propiedad por que es posible enviar mensajes sintácticamente iguales a objetos de tipos distintos. El único requisito que deben cumplir los objetos que se utilizan de manera polimórfica es saber responder al mensaje les envía. La apariencia del código puede ser muy diferente dependiendo del lenguaje que se utilice, más allá de las obvias diferencias sintácticas. El encapsulamiento es el ocultamiento del estado, es decir, de los datos miembro un objeto de manera que sólo se pueda cambiar mediante las operaciones definidas para ese objeto. Cada objeto está aislado del exterior, es un módulo natural, y la aplicación entera se reduce a un agregado o rompecabezas de objetos. El aislamiento protege a los datos asociados de un objeto contra su modificación por quien no tenga derecho a acceder ellos, eliminando efectos secundarios e interacciones. De esta forma el usuario de la clase puede obviar implementación los métodos y propiedades para concentrarse sólo en cómo usarlos. Por otro lado se evita que el usuario pueda cambiar su estado de maneras imprevistas e incontroladas. Variables Las variables son una de las características fundamentales los lenguajes programación, permiten acceder a la memoria para almacenar y recuperar los datos con los que nuestros programas van a trabajar. Son por tanto el mecanismo lenguajes de programación ponen a nuestra disposición para acceder la memoria. Se trata de un mecanismo lo más sencillo, sólo tenemos que dar un nombre a nuestras variables, a partir de ese momento el compilador traducirá forma automática nombre en un acceso a memoria. Por ejemplo: //Almacenamos un dato en memoria referenciado por el nombre edad edad = 5; //Recuperamos el dato almacenado y lo modificamos edad = edad + 1; Java es un lenguaje tipado y nos obliga a declarar nuestras variables antes de poder hacer uso de ellas, con esta declaración le indicamos al compilador el espacio en memoria que debe de reservar para almacenar la información. Por ejemplo: String cliente; Aquí estamos reservando memoria para una variable de tipo String y la identificamos con el nombre “cliente”. De ahora en adelante si programa hablamos de cliente, estamos haciendo referencia a esa porción de memoria y al valor que contiene. Podemos asignarle algún valor en el momento de declarar una variable. Por ejemplo: String cliente = "Isaac Newton";
  • 5. LENGUAJE DE PROGRAMACION JAVA Aquí reservamos memoria para una cadena de caracteres y le asignamos el valor "Isaac Newton". También podemos declararla y en otro lugar del programa fijarle un valor : String cliente; // declaración ... // El programa sigue cliente = "Isaac Newton"; // le damos un valor La sentencia para declarar una variable se resume como: Tipo_Dato Nombre_Variable [= Valor]; Definimos el tipo de dato, nombre y opcionalmente su valor. Para ver como se utilizan las variables, podemos modificar el primer programa. Agregaremos una variable que contenga el texto se mostrará en pantalla: {{Java/!|public}} {{Java/!|class}} HolaMundo { {{Java/!|public}} {{Java/!|static}} {{Java/!|void}} main(String[] args){ String saludo = "¡Hola Mundo!"; System.out.println( saludo ); } } Definimos una variable de tipo String con el nombre "saludo". En la declaración de variable también la inicializamos con el valor "¡Hola mundo!". Luego llamamos al método que imprimirá el texto en la pantalla haciendo referencia a variable. En programa original, explícitamente introducíamos el texto que se mostraría, ahora solo escribimos el nombre de la variable. Cuando el intérprete se encuentre con esta variable, tendrá que buscar el valor almacene en la memoria para mostrarlo por pantalla. Un variable puede cambiar su valor en el transcurso del programa. {{Java/!|public}} {{Java/!|class}} UsoVariables{ {{Java/!|public}} {{Java/!|static}} {{Java/!|void}} main(String args[]){ String saludo; saludo = "Hola Mundo!"; System.out.println( saludo ); saludo = ("Estoy utilizando variables"); System.out.println( saludo ); } }
  • 6. LENGUAJE DE PROGRAMACION JAVA Siempre debemos inicializar una variable. Al compilar el programa, compilador de Java leerá el contenido de la variable y siempre verificará que tenga un valor. De lo contrario el programa no compilará y mostrará un error. Un ejemplo de este caso: if (x > 0) { saludo = "Hola Mundo!!!"; } System.out.println( saludo ); En este caso el compilador mostrará un mensaje de error indicando que la variable x no se ha inicializado con ningún valor. Como se puede observar esta variable solo inicia cuando se cumple una condición, sin embargo indica que va a ser utilizada siempre. El compilador detecta este posible error. Un ejemplo de solución sería: int x = 1; if (x > 0) { saludo = "Hola Mundo!"; } System.out.println( saludo ); Agregando estas líneas al final del código de la clase UsoVariables nos mostraría lo siguiente a la salida: Hola Mundo! Estoy utilizando variables Hola Mundo!!! 2 ._Nombre de la Variable El nombre debe ser único en el contexto del programa. Además seguir las siguientes reglas: El nombre debe ser único en el contexto del programa. Además seguir las siguientes reglas:  No puede ser una palabra reservada del lenguaje o un literal booleano (true o false)  Puede contener cualquier carácter Unicode, pero no puede comenzar con un número  No debe contener los símbolos que se utilicen como operadores ( + , - , ?, etc ) Por convención, los nombres de variables comienzan con una letra en minúscula. Si un nombre consiste en más de una palabra, se escribirá sin espacios entre ellas y cada palabra (salvo la primera) comenzará con una letra mayúscula (por ejemplo : estaBienEsteNombre )
  • 7. LENGUAJE DE PROGRAMACION JAVA  No puede ser una palabra reservada del lenguaje o un literal booleano (true o false)  Puede contener cualquier carácter Unicode, pero no puede comenzar con un número  No debe contener los símbolos que se utilicen como operadores ( + , - , ?, etc. ) Por convención, los nombres de variables comienzan con una letra en minúscula. Si un nombre consiste en más de una palabra, se escribirá sin espacios entre ellas y cada palabra (salvo la primera) comenzará con una letra mayúscula por ejemplo: estaBienEsteNombre ) TIPOS DE DATOS (VARIABLES) EN JAVA. Los primeros lenguajes de programación no usaban objetos, solo variables. Una variable podríamos decir que es un espacio de la memoria del ordenador a la que asignamos un contenido que puede ser un valor numérico (sólo números, con su valor de cálculo) o de tipo carácter o cadena de caracteres (valor alfanumérico que constará sólo de texto o de texto mezclado con números). Como ejemplo podemos definir una variable a que contenga 32 y esto lo escribimos como a = 32. Posteriormente podemos cambiar el valor de a y hacer a = 78. O hacer “a” equiva- lente al valor de otra variable “b” así: a = b. Dado que antes hemos dicho que un objeto también ocupa un espacio de memoria: ¿en qué se parecen y en qué se diferencia un objeto de una variable? Consideraremos que las variables son entidades elementales: un número, un carácter, un valor verdadero o falso… mientras que los objetos son entidades complejas que pueden estar formadas por la agrupación de muchas variables y métodos. Pero ambas cosas ocupan lo mismo: un espacio de memoria (que puede ser más o menos grande).
  • 8. LENGUAJE DE PROGRAMACION JAVA En los programas en Java puede ser necesario tanto el uso de datos elementales como de datos complejos. Por eso en Java se usa el término “Tipos de datos” para englobar a cual- quier cosa que ocupa un espacio de memoria y que puede ir tomando distintos valores o características durante la ejecución del programa. Es decir, en vez de hablar de tipos de variables o de tipos de objetos, hablaremos simplemente de tipos de datos. Sin embargo, a veces “coloquialmente” no se utiliza la terminología de forma estricta: puedes encontrarte textos o páginas web donde se habla de una variable en alusión a un objeto. En Java diferenciamos dos tipos de datos: por un lado, los tipos primitivos, que se corres- ponden con los tipos de variables en lenguajes como C y que son los datos elementales que hemos citado. Por otro lado, los tipos objeto (que normalmente incluyen métodos). Veamos los tipos de datos en Java sobre un esquema de síntesis: Cada variable debe tener un tipo de dato predefinido. Esto determina el rango valores que puede almacenar y qué operaciones se pueden realizar así como el resultado que te dará. Por ejemplo, una variable de tipo entero puede almacenar números sin decimales y puede realizar operaciones aritméticas, pero no contener palabras. Existen dos categorías de variables: las de tipo primitivo y referenciadas. Una variable de tipo primitivo accede al valor asignado directamente. Las referenciadas acceden a través de un puntero, es decir, no almacenan valor sino una dirección memoria. Estas últimas son utilizadas por las matrices, clases y interfaces. Un objeto es una cosa distinta a un tipo primitivo, aunque “porten” la misma información. Tener siempre presente que los objetos en Java tienen un tipo de tratamiento y los tipos primitivos, otro. Que en un momento dado contengan la misma información no significa en ningún caso que sean lo mismo. Iremos viendo las diferencias entre ambos poco a poco. De momento, recuerda que el tipo primitivo es algo elemental y el objeto complejo. Supón una cesta de manzanas en la calle: algo elemental. Supón una cesta de manzanas dentro nave espacial (considerando el conjunto nave + cesta): algo complejo. La información que portan puede ser la misma, pero no son lo mismo. ¿Para qué tener esa aparente duplicidad entre tipos primitivos y envoltorio? Esto es una cuestión que atañe a la concepción del lenguaje de programación. Tener en cuenta una cosa: un tipo primitivo es dato elemental y carece de métodos, mientras que un objeto es una entidad compleja y dispone de métodos. Por otro lado, de acuerdo con la especificación Java, es posible que necesitemos utilizar dentro un programa objeto que “porte” como contenido número entero. Desde el momento en que sea necesario un objeto habremos de pensar en un envoltorio, por ejemplo Integer. Inicialmente nos puede costar un poco distinguir cuándo usar tipo primitivo y cuándo un envoltorio en situaciones las que ambos sean válidos. Seguiremos esta regla: usaremos por norma general tipos primitivos. Cuando para la
  • 9. LENGUAJE DE PROGRAMACION JAVA estructura de datos o el proceso a realizar sea necesario un objeto, usaremos envoltorio. Los nombres de tipos primitivos y envoltorio se parecen mucho. En realidad, excepto entre int e Integer y char Character, la diferencia se limita a que en un caso la inicial es minúscula (por ejemplo double) y en el otro mayúscula Double). Esa similitud puede confundirnos inicialmente, pero hemos de tener muy claro qué es cada tipo y cuándo utilizar cada tipo. Una cadena de caracteres es un objeto. El tipo String en Java nos permite crear objetos que contienen texto (palabras, frases, etc.). El debe ir siempre entre comillas. Muchas veces se cree erróneamente que el tipo String es un primitivo por analogía con otros lenguajes donde String funciona como una variable elemental. En Java no es así. Hay distintos tipos primitivos enteros. ¿Cuál usar? Por norma general usaremos el tipo int. Para casos en los que el entero pueda ser muy grande usaremos long. Los tipos byte y short los usaremos cuando tengamos un mayor dominio del lenguaje. DECLARACIÓN E INICIALIZACIÓN DE VARIABLES EN JAVA. Vamos a ver ejemplos de uso de tipos de datos en Java. Para ello nos valdremos primera- mente de algunos tipos primitivos usados habitualmente como son int (entero), String (ca- dena de caracteres), boolean (valor booleano verdadero o falso), float (decimal simple), etc. Una constante es una variable del sistema que mantiene un valor inmutable a lo largo de toda la vida del programa. Las constantes en Java se definen mediante el modificador final. La estructura sería: 1. static final nombreConstante = valor; De esta forma si queremos definir las constantes DIAS_SEMANA ó DIAS_LABORABLES, que sabemos que son variables que no cambiarán su valor a lo largo del programa, gene- raremos el siguiente código: 1. static final int DIAS_SEMANA = 7; 2. static final int DIAS_LABORABLES = 5; Si queremos utilizar una constante Java, simplemente deberemos de utilizar su nombre. Así, si queremos utilizar las anteriores constantes, lo haremos de la siguiente forma: 1. System.out.println("El número de días de la semana son " + DIAS_SEMANA); 2. System.out.println("El número de días laborables de la semana son " + DIAS_LA- BORABLES); El código completo del programa de constantes en Java será el siguiente: 1. public class ConstanteEnJava { 2. 3. static final int DIAS_SEMANA = 7; 4. static final int DIAS_LABORABLES = 5;
  • 10. LENGUAJE DE PROGRAMACION JAVA 5. 6. public static void main(String[] args) { 7. 8. System.out.println("El número de días de la semana son " + DIAS_SEMANA); 9. System.out.println("El número de días laborables de la semana son " + DIAS_LA- BORABLES); 10. 11. } 12. } En este caso las hemos declarado static en la clase. Si bien podrían ir dentro del método main sin ser static: 1. public class ConstanteEnJava { 2. 3. public static void main(String[] args) { 4. 5. final int DIAS_SEMANA = 7; 6. final int DIAS_LABORABLES = 5; 7. 8. System.out.println("El número de días de la semana son " + DIAS_SEMANA); 9. System.out.println("El número de días laborables de la semana son " + DIAS_LA- BORABLES); 10. 11. } 12. } Aquí mostramos ejemplos de uso de tipos de datos en Java: DECLARACIÓN E INICIALIZACIÓN DE VARIABLES EN JAVA. Vamos a ver ejemplos de uso de tipos de datos en Java. Para ello nos valdremos primera- mente de algunos tipos primitivos usados habitualmente como son int (entero), String (ca- dena de caracteres), boolean (valor booleano verdadero o falso), float (decimal simple), etc. Aquí mostramos ejemplos de uso de tipos de datos en Java: /* Ejemplo - aprenderaprogramar.com */
  • 11. LENGUAJE DE PROGRAMACION JAVA public class Ejemplo2 { private int precio; // Las instrucciones y declaraciones finalizan con ; private int importe_acumulado; private String profesor; private String aula; private int capacidad; private boolean funciona; private boolean esVisible; private float diametro; private float peso; private short edad; private long masa; private char letra1; } //Cierre de la clase
  • 13. LENGUAJE DE PROGRAMACION JAVA Este esquema no es necesario aprendérselo de memoria en todos sus detalles, aunque sí lo iremos memorizando poco a poco a medida que lo utilicemos, por lo menos hasta tener en nuestra cabeza los nombres de todos los tipos primitivos y envoltorio y sus característi- cas (si son objetos o no y su rango aproximado). A continuación mostramos el mismo es- quema en formato de tabla: TIPOS DE DATOS EN JAVA NOMBRE TIPO OCUPA RANGO APROXIMADO TIPOS PRIMITI- VOS (sin métodos; no son objetos; no necesitan una invocación para ser crea- dos) byte Entero 1 byte -128 a 127 short Entero 2 bytes -32768 a 32767 int Entero 4 bytes 2*109 long Entero 8 bytes Muy grande float Decimal simple 4 bytes Muy grande double Decimal doble 8 bytes Muy grande char Carácter simple 2 bytes --- boolean Valor true o false 1 byte --- TIPOS OB- JETO (con métodos, necesitan una invocación para ser creados) Tipos de la biblio- teca estándar de Java String (cadenas de texto) Muchos otros (p.ej. Scanner, TreeSet, ArrayList…) Tipos definidos por el programa- dor / usuario Cualquiera que se nos ocurra, por ejem- plo Taxi, Autobus, Tranvia arrays Serie de elementos o formación tipo vector o matriz. Lo consideraremos un objeto especial que carece de métodos.
  • 14. LENGUAJE DE PROGRAMACION JAVA Tipos envoltorio o wrapper (Equiva- lentes a los tipos primitivos pero como objetos.) Byte Short Integer Long Float Double Character Boolean 3 ADMINISTRACION DE UN ARREGLO: Arrays El array es una de las estructuras de datos más ampliamente utilizada por su flexifilidad para derivar en complejas estructuras de datos y su simplicidad. Empezaremos con una definición: un array es una secuencia de elementos, donde cada elemento (un grupo de bytes de memoria que almacenan un único ítem de datos) se asocia con al menos un indice (entero no-negativo). Esta definición lanza cuatro puntos interesantes:  Cada elemento ocupa el mismo número de bytes; el número exacto depende del tipo de datos del elemento.  Todos los elementos son del mismo tipo.  Tendemos a pensar que los elementos de un array ocupan localizaciones de me- moria consecutivas. Cuando veamos los arrays bi-dimensionales descubrirá que no es siempre así.  El número de índices asociados con cada elemento es la dimensión del array Nota: Esta sección se enfoca exclusivamente en arrays de una y dos dimensiones porque los arrays de mas dimensiones no se utilizan de forma tan frecuente. Arrays El tipo de array más simple tiene una dimensión: cada elemento se asocia con un único índice. Java proporciona tres técnicas para crear un array de una dimensión: usar sólo un inicializador, usar sólo la palabra clave new, y utilizar la palabra clave new con un inicializa- dor.
  • 15. LENGUAJE DE PROGRAMACION JAVA Utilizar sólo un Inicializador Utilizando un inicializador se puede utilizar cualquiera de estas dos sintaxis: type variable_name '[' ']' [ '=' initializer ] ';' type '[' ']' variable_name [ '=' initializer ] ';' Donde el inicializador tiene la siguiente sintaxis: '{' initial_value1 ',' initial_value2 ',' ... '}' El siguiente fragmento ilustra como crear un array de animales: // Create an array of animals. String animals [] = { "Tiger", "Zebra", "Kangaroo" }; Utilizar sólo la Palabra Clave "new" Utilizando la palabra clave new se puede utilizar cualquiera de estas dos sintaxis: type variable_name '[' ']' '=' 'new' type '[' integer_expression ']' ';' type '[' ']' variable_name '=' 'new' type '[' integer_expression ']' ';' Para ambas sintaxis:  variable_name especifica el nombre de la variable del array uni-dimensional  type especifica el tipo de cada elemento. Como la variable del array uni-dimensional contiene una referencia a un array uni-dimensional, el tipo es type []  La palabra clave new seguida por type y seguida por integer_expression entre cor- chetes cuadrados ([]) específica el número de elementos. new asigna la memoria para los elementos del array uni-dimensional y pone ceros en todos los bits de los bytes de cada elementos, lo que significa que cada elemento contiene un valor por defecto que interpretamos basándonos en su tipo.  = asigna la referencia al array uni-dimensional a la variable variable_name. Truco: Los desarrolladores Java normalmente situan los corchetes cuadrados después del tipo (int [] test_scores) en vez de después del nombre de la variable (int test_scores []) cuando declaran una variable array. Mantener toda la información del tipo en un único lugar mejora la lectura del código. El siguiente fragmento de código utiliza sólo la palabra clave new para crear un array uni- dimensional que almacena datos de un tipo primitivo: int [] test_scores = new int [4]; int [] test_scores declara una variable array uni-dimensional (test_scores) junto con su tipo de variable (int []). El tipo de referencia int [] significa que cada elemento debe contener un ítem del tipo primitivo entero. new int [4] crea una arra uni-dimensional asignando memoria para cuatro elementos enteros consecutivos. Cada elemento contiene un único entero y se inicializa a cero. El operador igual a (=) asigna la referencia del array uni-dimensional a test_scores. La siguiente figura ilustra los elementos y la variable array uni-dimensional resultante:
  • 16. LENGUAJE DE PROGRAMACION JAVA Cuidado: Cuando se crea un array uni-dimensional basado en un tipo primitivo, el compilador re- quiere que aparezca la palabra clave que indica el tipo primitivo en los dos lados del ope- rador igual-a. De otro modo, el compilador lanzará un error. Por ejemplo, int [] test_scores = new long [20]; es ilegal porque las palabras claves int y long representan tipos primitivos incompatibles. Los arrays uni-dimensionales de tipos primitivos almacenan datos que son valores primiti- vos. Por el contrario, los arrays uni-dimensiones del tipo referencia almacenan datos que son referencias a objetos. El siguiente fragmento de código utiliza la palabra clave new para crear una pareja de arrays uni-dimensionales que almacenan datos basados en tipo refe- rencia: Clock [] c1 = new Clock [3]; Clock [] c2 = new AlarmClock [3]; Clock [] c1 = new Clock [3]; declara una variable array uni-dimensional, (c1) del tipo Clock [], asigna memoria para un array uni-dimensional Clock que consta de tres elementos con- secutivos, y asigna la referencia del array Clock a c1. Cada elemento debe contener una referencia a un objeto Clock (asumiendo que Clock es una clase concreta) o un objeto creado desde una subclase de Clock y lo inicializa a null. Clock [] c2 = new AlarmClock [3]; se asemeja a la declaración anterior, excepto en que se crea un array uni-dimensional AlarmClock, y su referencia se asgina a la variable Clock [] de nombre c2. (Asume AlarmClock como subclase de Clock.) Utilizar la palabra clave "new" y un Inicializador Utilizar la palabra clave new con un inicializador requiere la utilización de alguna de las siguientes síntaxis: type variable_name> '[' ']' '=' 'new' type '[' ']' initializer ';' type '[' ']' variable_name '=' 'new' type '[' ']' initializer ';'
  • 17. LENGUAJE DE PROGRAMACION JAVA Donde initializer tiene la siguientes sintaxis: '{' [ initial_value [ ',' ... ] ] '}'  variable_name especifica el nombre de la variable del array uni-dimensional  type especifica el tipo de cada elemento. Como la variable del array uni-dimensional contiene una referencia a un array uni-dimensional, el tipo es type []  La palabra clave new seguida por type y seguida por corchetes cuadrados ([]) va- cíos, seguido por inicializer. No se necesita especificar el número de elementos en- tre los corchetes cuadrados porque el compilador cuenta el número de entradas en el inicializador. new asigna la memoria para los elementos del array uni-dimensional y asigna cada una de las entradas del inicializador a un elemento en orden de iz- quierda a derecha.  = asigna la referencia al array uni-dimensional a la variable variable_name. 4-OPERADORES: Operadores en C * multiplicación / división Se evalúan primero, si hay muchas, se evaluan de izquierda a derecha + suma - resta Se evalúan después, si hay muchas, se evaluan de izquierda a derecha % módulo Residuo de la división entera Prioridad de Operadores Aritméticos: Todas las expresiones con paréntesis anidados se evalúan de dentro a afuera, el paréntesis más interno se evalúa primero. Dentro de una misma expresión los operadores se evalúan en el siguiente orden: 1. ^ Exponentes 2. * Multiplicación, / División, % Módulo 3. + Suma, - Resta Los Operadores en na misma expresión con igual nivel de prioridad, se evalúan de izquierda a derecha Algebra Estamos acostumbrados a representar algebraicamente una ecuación, pero en la compu- tadora es diferente, para ello podemos utilizar los paréntesis, de lo contrario el resultado puede ser diferente
  • 18. LENGUAJE DE PROGRAMACION JAVA Ejemplos: m=(a+b+c+d+e)/5 m=a+b+c+d+e/5 Ecuación de una línea recta y=mx+b y=m*x+b Ejercicio: z=prq+w/x-y Revisemos las siguientes ecuaciones 7+5-6 1 12-6 2 6 9+7*8-36/5 1 9+56-36/5 2 9+56-7.2 3 65-7.2 4 57.8 Operadores de igualdad Algebraico = igual = diferente de En Java == igual != diferente de Ejemplo x==y x!=y igual diferente de Operadores de relación
  • 19. LENGUAJE DE PROGRAMACION JAVA < menor que > mayor que <= menor o igual que >= mayor o igual que Variable Es un espacio en la memoria de la computadora que permite almacenar tempo- ralmente un dato durante la ejecución de un proceso, su contenido puede cam- biar durante la ejecución del programa. Para poder reconocer una variable en la memoria de la computadora, es necesario darle un nombre con el cual poda- mos identificarla dentro de un algoritmo. Constante Es un dato numérico o alfanumérico que no cambia durante la ejecución del programa. Ejemplo: pi = 3.1416 Ejemplo: area = pi * radio ^ 2 Las variables son : el radio, el area y la constate es pi Por su contenido Variables Numéricas: Son aquellas en las cuales se alma- cenan valores numéricos, positivos o negativos, es decir almacenan números del 0 al 9, signos (+ y -) y el punto decimal. Ejemplo: iva = 0.15 pi = 3.1416 costo = 2500 Variables Lógicas: Son aquellas que solo pueden tener dos valores (cierto o falso) estos representan el resultado de una comparación entre otros datos. Variables Alfanuméricas: Esta formada por caracteres alfanuméricos (letras, números y caracteres especiales). Ejemplo: letra = ’a’ apellido = ’lopez’ direc- cion = ’Av. Libertad #190’ Por su uso Variables de Trabajo: Variables que reciben el resultado de una operación matemática completa y que se usan normalmente dentro de un pro- grama. Ejemplo: Suma = a + b /c Contadores: Se utilizan para llevar el control del numero de ocasiones en que se realiza una operación o se cumple una condición. Con los incrementos ge- neralmente de uno en uno. Acumuladores: Forma que toma una variable y que sirve para llevar la suma acumulativa de una serie de valores que se van leyendo o calculando progresi- vamente. Expresiones Las expresiones son combinaciones de constantes, variables, símbolos de ope- ración, paréntesis y nombres de funciones especiales. Por ejemplo: q= a + (b + 3) / c
  • 20. LENGUAJE DE PROGRAMACION JAVA Cada expresión toma un valor que se determina tomando los valores de las variables y constantes implicadas y la ejecución de las operaciones indicadas. Una expresión consta de operadores y operandos. Según sea el tipo de datos que manipulan, se clasifican las expresiones en: Aritméticas Relacionales Lógi- cas 5-SENTENCIAS DE BIFURCACION Y REPETICION Estructuras de Programación Ejecución Secuencial Las instrucciones dentro de un programa se ejecutan una a una en el orden en que están escritas A esto se le llama Ejecución Secuencial Estructuras de Selección Selección if, realiza una acción si la condición es verdadera (selección simple) Selección if…..else, realiza una acción si la condición es verdadera y realiza una acción diferente si la condición es falsa (selección doble) Estructura de Selección Múltiple Selección switch, realiza muchas opciones dependiendo del valor de la expresión (selec- ción múltiple) Estructuras de Repetición  while  do…..while  for Instrucción de Selección if Esta estructura permite elegir entre diversos cursos de acción Ej. Pseudocodigo if calificación del estudiante es mayor o igual que 60 Imprime “Aprobado” Programando en C if(calificacion>=60) printf(“Aprobadon”);
  • 21. LENGUAJE DE PROGRAMACION JAVA Instrucción de Selección if……else Realiza la acción indicada solo si la condición es verdadera, de lo con- trario realiza la siguiente acción if calificación del estudiante es mayor o igual que 60 Imprime “Aprobado” else Imprime “Reprobado” Instrucción de Selección if……else Programando en C if(calificacion>=60) printf(“Aprobadon”); Else printf(“Reprobadon”); Problema Elabora el Pseudocódigo que imprima una A para las calificaciones su- periores a 90, B para las calificaciones mayores o iguales que 80, C para las calificaciones mayores o iguales que 70, D para las calificacio- nes mayores o iguales que 60 y F para las calificaciones restantes Pseudocódigo if calificación del estudiante es mayor o igual que 90 Imprime “A” else if calificación del estudiante es mayor o igual que 80 Imprime “B” if calificación del estudiante es mayor o igual que 70 Imprime “C” else if calificación del estudiante es mayor o igual que 60 Imprime “D” else Imprime “F” Programando en C if (calificacion>=90) printf(“An”); else if (calificacion>=80)
  • 22. LENGUAJE DE PROGRAMACION JAVA printf(“Bn”); else if (calificacion>=70) printf(“Cn”); else if (calificacion>=60) printf(“Dn”); else printf(“Fn”); Estructura de Selección Múltiple Diferencias entre if...else if y switch Aunque con la estructura if ... else if se pueden realizar comprobaciones múltiples, en ocasiones no es muy elegante, ya que el código puede ser difícil de seguir y puede confundir incluso al autor transcurrido un tiempo Java tiene incorporada una sentencia de bifurcación múltiple llamada switch La computadora comprueba una variable sucesivamente frente a una lista de constantes enteras o de carácter. Después de encontrar una coincidencia, la computadora ejecuta la sen- tencia o bloque de sentencias que se asocian con la constante. switch…..case y default Consiste en una serie de etiquetas case y el caso opcional como default El valor de la expresión debe de ser de tipo int o char, pero nunca de tipo double o float Evaluación del switch La expresión de control se evalúa y compara con cada una de las etiquetas case Sintaxis Switch (variable) { case etiqueta1:conjunto de sentencias; break; case etiqueta2:conjunto de sentencias; break; . . . default:sentencias; break; } default
  • 23. LENGUAJE DE PROGRAMACION JAVA Funciona cuando no existe la selección adecuada dentro de las senten- cias case, contiene un valor por omisión Ej. default:printf(“El valor que ingresó no corresponde a ningún mes”); Limitaciones de switch con respecto a if Sólo se tiene posibilidad de revisar una sola variable. Con switch sólo se puede comprobar por igualdad, mientras que con if puede ser con cualquier operador relacional. No se puede probar más de una constante por case switch (letra) { case ‘a’:printf(“Es una vocal”); break; case ‘e’:printf(“Es una vocal”); break; case ‘i’:printf(“Es una vocal”); break; . . . default:printf(“La letra no es una vocal”); } //Agrega el codigo necesario para las vocales faltantes 6 Describa cómo se tratan las funciones y procedimientos en JAVA. Una función es un conjunto de instrucciones que ejecutan una rutina y devuelven un resultado. El resultado puede depender de parámetros entrada. Una función se construye de la siguiente manera: tipo_resultado nombre_función (tipo_parámetro nombre_parámetro, ... ) { sentencia1; sentencia2; ...
  • 24. LENGUAJE DE PROGRAMACION JAVA sentenciaN; } Una función puede o no devolver un resultado, según cómo haya sido declarado. La siguiente función no devuelve nada, puesto que se pone void delante, al declararla // Esta función no devuelve nada void funcion ( /* parámetros */) Sin embargo, esta otra sí devuelve un valor entero // Esta función devuelve un valor entero int funcion ( /* parámetros */ ) Si la función devuelve algún tipo de resultado, es obligatorio en java poner el código la función return valordevuelto. Si dentro de la función hay condicionales, es también obligatorio que en todos los posibles caminos por los que se termine el código de la función, ponga return y valor devuelto. Lógicamente, cuando la función devuelve el resultado, finaliza ejecución de misma, y de cualquier estructura de control iterativa (for, while...) aunque no se haya cumplido su condición de salida.