Académique Documents
Professionnel Documents
Culture Documents
de programacin para la solucin de problemas. PROGRAMA I. Fundamentos del lenguaje. I.1. Introduccin al lenguaje y a su entorno de desarrollo. I.2. Comentarios. I.3. Variables y constantes. I.4. Objetos que permiten E/S por consola. I.5. Operadores. I.6. Tipos de datos. I.6.1. Fundamentales. I.6.2. Definidos por el usuario. I.7. Palabras reservadas. I.8. Expresiones. I.9. Estructuras de control. I.9.1. Asignacin. I.9.2. Seleccin. I.9.3. Ciclos. II. Subprogramas (Mtodos). II.1. Definicin de un subprograma (Mtodos). II.1.1. Estructura de un subprograma. II.1.2. Valor de retorno. II.2. Declaracin de un subprograma. II.3. Bibliotecas o librera de subprogramas. II.4. Primer acercamiento a Clases y Objetos. II.5. mbito y tiempo de vida de variables. II.6. Argumentos y paso de parmetros. II.7. Sobrecarga de subprogramas. II.8. Recursividad. III. Punteros, referencias y arreglos. III.1. Creacin. III.2. Operaciones con punteros. III.3. Referencias III.4. Arreglos unidimensionales, bidimensionales y multidimensionales. III.5. Cadenas de caracteres. III.6. Asignacin dinmica de memoria. III.7. Uso de clases predefinidas para arreglos.
IV. Clases y Objetos. IV.1. Definicin de una clase. IV.2. Declaracin de clases. IV.3. Miembros de una clase. IV.4. mbito referente a una clase. IV.5. Especificadores de acceso. IV.6. Creacin de objetos. IV.7. Puntero this. IV.8. Constructores y destructores. V. Herencia. V.1. Importancia de la herencia en la POO V.2. Jerarqua de herencia. V.3. Conceptos de Herencia simple y mltiple. V.4. Principios generales de diseo de jerarquas. V.5. Especificadores de acceso a jerarqua de clases. V.6. Definicin de una clase base. V.7. Definicin de una clase derivada V.7.1. Constructores y destructores de clases derivadas. V.7.2. Conversin implcita de objetos de clase derivada a objeto de clase base. V.8. Herencia mltiple. VI. Polimorfismo. VI.1. Concepto de polimorfismo. VI.2. Clase base abstracta. VI.3. Subprogramas virtuales. VI.4. Destructores virtuales. VII. Archivos. VII.1. Clases de E/S Clase base abstracta. VII.2. Realizar entrada y salida de texto. VII.3. Leer y escribir archivos. VII.4. Realizar entrada y salida binaria. Bibliografa:
Paul J. Deitel / Harvey M. Deitel Cmo programar en Java, 7. Edicin, 2008 Pearson, Prentice Hall
Anthony Sintes Aprendiendo Programacin Orientada A Objetos en 21 lecciones avanzadas con Java, 2002 Pearson Educacin
Templeman Jukian y Oslen Andy Microsoft Visual C++.NET aprenda ya Mc Graw Hill
Fechas de Exmenes Examen 1er 2. 3er Regularizacin Extraordinario I Fecha 4 de Marzo 2010 15 de Abril 2010 3 de Junio 8 de Junio del 2010 11 de Junio de 2010 Unidades I y II III y IV V, VI y VII
I. Fundamentos del lenguaje. Java, es desarrollo de Sun Microsystem en 1995, es un lenguaje de programacin orientado a objetos, una de sus principales caractersticas es que permite operar de forma independiente a la plataforma y al sistema operativo. Esto quiere decir que al crear una aplicacin esta puede correr en cualquier plataforma de hardware o software. Por ejemplo una aplicacin hecha en C++ y con el sistema operativo Windows, solamente podr ejecutarse en otra maquina con este sistema operativo pero no se podr ejecutar en plataformas Unix/Linux, Mac OS / Power PC. La idea de Java, es poner una capa sobre la plataforma de hardware y una capa sobre el sistema operativo que permite que cualquier aplicacin desarrollada en Java quede ligada nicamente a Java, independiente de la plataforma. Esta concepcin queda recogida bajo el concepto de Mquina Virtual de Java JVM (Java Virtual Machine), un software que interpreta instrucciones para cualquier equipo sobre la que este corriendo y que permite, una vez instalado, que una misma aplicacin pueda funcionar en una PC o en una Mac. Hoy en da, cualquier sistema operativo moderno (Windows en todas sus modalidades, Macintosh, Unix, Linux, Solaris, etc.) cuenta con JVM, el cual acta como una capa de abstraccin entre un programa y el sistema operativo, otorgando una total independencia. Se puede decir que Java es un lenguaje de computacin universa, lo que significa que puede correr en cualquier plataforma siempre y cuando una JVM haya sido instalada en ella. Java es un descendiente de C++ que a su vez es descendiente directo de C. Muchas de las caractersticas de estos lenguajes se han heredado a Java. De l lenguaje C heredo su sintaxis y de C++ la programacin orientada a objetos, adems de gestin de memoria, soporte multihilos. Java es ms fcil de aprender y ms fcil de utilizar que C++ ya que las caractersticas ms complejas de C++ han sido eliminas de Java: como son los punteros (apuntadores) y sentencias goto entre otras. Historia de Java El diseo original de Java fue concebido por James Gosling, Patrick Naughton, Chris Warth, Ed Frank y Mike Sheridan, ingenieros de Sun Microsystem. El proyecto original se le denomino Green, comenz apoyndose en C++, pero a medida que se progresaba se encontraron dificultades de portabilidad. Para evitar estas dificultades decidieron crear su propio lenguaje y en 1991 naci un nuevo lenguaje orientado a objetos al cual se le llamo Oak debido al roble que Gosling tenia a la vista desde su ventana en las oficinas de Sun. Sorprendentemente, las inquietudes originales para la creacin de Oak no era Internet. En realidad, se buscaba un lenguaje independiente de la plataforma (es decir, de arquitectura neutra) que se pudiera utilizar para crear software que se
incrustara en dispositivos electrnicos diversos tales como controles remotos, hornos de microondas, televisores y electrodomsticos en general. A mitad de 1993 se lanz Mosaic, el primer navegador para Web, y comenz a crecer el inters por Internet (y en particular por Word Wide Web). Entonces se rediseo el lenguaje para desarrollar aplicaciones en Internet, y en enero de 1995 surgio Java, este nombre se lo dieron porque el grupo de trabajo visitaba con frecuencia una cafetera local donde Java es una variedad de caf que les servan en ese lugar. Sun lanz en el entorno JDK 1.0 (Java Development Kit) en 1996, desde entonces se han lanzado diferentes versiones, aunque la primer versin comercial se denomino JDK 1.1 y se lanzo en a principios de 1997. Versiones de Java Sun ha lanzado 5 versiones de Java: Java 1.0 Pequea versin centrada en la Web disponible uniformemente para todos los navegadores populares, lanzamiento 1996. Mejoras en la interfaces del usuario, manipulacin de eventos, reescritura totalmente y una tecnologa de componentes llamada JavaBeans, lanzamiento 1997. Una versin ampliada significativamente, con caractersticas de interfaces graficas de usuario, conectividad de bases de datos y muchas otras mejoras, lanzamiento 1998. Aade caractersticas notables como multimedia mejorada, ms accesibilidad y compilacin ms rpida, lanzamiento 2000. Posibilidad de trabajar con XML, lanzamiento 2001. Esta versin es conocida como Mustang
Evolucin de las versiones de Java Java tiene tres grandes especificaciones la cuales son: J2SE Java 2 Standard Edition / Java 2 Edicin Estndar .Conjunto de herramientas para construir aplicaciones en Java. Java 2 Enterprise Edition / Java 2 Edicin Empresarial. Orientada a desarrolladores de aplicaciones de red distribuidas de gran escala y aplicaciones basades en Web, por ejemplo de grades fabricantes estan IBM, Nokia, Motorota, HP (hewlett-Packard) y otros ms. Java 2 Micro Edition / Java 2 Edicin Micro. Orientada hacia el desarrollo de aplicaciones para dispositivos pequeos, con memoria limitada, como los telfonos celulares, radiolocalizadores, PDAs (Personal Digital Assistant / Asistente Digital Personal)
J2EE
J2ME
Instalacin de Java Pasos para la instalacin de j2sdk: 1. Tener el archivo jdk-6u18-windows-i586.exe y ejecutarlo
Se mostrar en pantalla que se esta preparando para la instalacin y posteriormente aparecer la pantalla de licencia (ver fig. 1), hacer clic en Accept.
Figura 1
2.
Figura 2 3. Y a continuacin despliega el avance de la instalacin, para finalmente mostrar la venta de la figura 3 donde indica que se instalo correctamente.
Figura 3
Los archivos ms importantes instalados: javac.exe java.exe javadoc.exe appletviewer.exe jdb.exe El copilador de Java. El lanzador para las aplicaciones de Java. Generador de documentacin API (Application Programming Interface / Interfaces de Programacin de Aplicaciones). Visualizador de applets sin necesidad de navegador Web. El Depurador de Java.
Ventana de DOS y algunos comandos La ventana de DOS (Disk Operating System), es una aplicacin que se encuentra en Inicio/Programas Todos los Programas-/Accesorios/ . En esta ventana ejecutaremos algunos comandos internos (almacenados en el command.com) y externos (extensin .exe. com. y .bat) para generar una aplicacin. Comandos: Dir.Mkdir (md).RmDir (rd).ChDir (cd).Del (erase),Cls.Rename (ren) Despliega el contenido del directorio actual. Crea una carpeta, ejemplo md Java. Elimina un directorio que se encuentre vaci, ejemplo rm Java. Cambia de directorio. Ejemplo cd Java, cd .. Borra archivos, ejemplo del *.txt borra. Limpia pantalla Renombra archivos. Ejemplo ren *.txt *.java.
Especificaciones del lenguaje Las especificaciones es una definicin tcnica del lenguaje que incluye sintaxis, estructura e interfaces de programacin de aplicaciones (API, Application Programming Interface) que contiene clases predefinidas. La versin actualizada de las APIs las puede encontrar en www.sun.com o www.javasoft.com.
Adems de Sun existen otras compaas que generan entornos de desarrollo para Java, entre estas se encuentran: Caf de Sysmantec Visual Age for Java by IBM JFactory de Roge Wave JBuilder de Imprise Visual J++ de Microsoft www.symantec.com www.ibm.com www.rogewave.com www.imprise.com www.microsoft.com
I.1. Introduccin al lenguaje y a su entorno de desarrollo. Estructura general de un programa en Java import Importacin de paquetes con clases predefinidas. public class NombreDeLaClase { // Este nombre debe de coincidir con el nombre fsico del archivo fuente y debe tener extensin .java
Declaracin de variables miembro de la clase public static tipo main (String[] args) { // Tambin (String args[]) puede especificarse as. Declaracin de variables locales Sentencias de la funcin main() [return tipo;] } Definicin de mtodos de la clase acceso static tipo NombreDelMtodo1 (Lista de Argumentos) { Declaracin de variables del mtodo 1 Sentencias del mtodo 1 [return tipo;] }
acceso static tipo NombreDelMtodo2 (Lista de Argumentos) { Declaracin de variables del mtodo 2 Sentencias del mtodo 2 [return tipo;] } } Etapas para la generacin de una aplicacin en Java Las etapas clsicas son: edicin, compilacin, depuracin y ejecucin de un programa. Edicin: Existen numerosos entornos de programacin de Java (SDK Software Development Kit / Entorno de Desarrollo de Software) disponibles en el mercado, dada uno con sus propias caractersticas y funcionalidades, dejaremos que usted decida cual es el mejor que se adecue a sus necesidades. Veremos la edicin de los programas desde un editor bsico. La edicin es el proceso de capturar en un archivo fuente los comandos, los cuales realizaran las acciones o tarea encomendada. El archivo fuente debe de tener el mismo nombre de la clase definida y extensin .java.
Programa HolaMundo.java
Nota.-
Asegrese que el nombre coincida exactamente con el nombre de la clase (En Maysculas y Minsculas) debido a que Java es sensible a las maysculas. Al salvar el archivo fuente en tipo seleccione Todos los archivos.
Compilacin: Una vez terminado el archivo fuente, desde una ventana de DOS debe correr el comando externo java.exe conjuntamente con el nombre del archivo fuente, de la siguiente forma: javac HolaMundo.java. Ejecucin: Ahora para correr el programa ejecute el comando externo java.exe seguido del archivo de cdigo de byte (bytecode) que tiene la extensin .class pero sin extensin, de la siguiente forma: java HolaMundo.
Depuracin:
Es el proceso de quitar los errores de sintaxis, los errores de ejecucin y los errores lgicos.
o Errores de sintaxis.- Ocurren cuando una o varias sentencias violan una o ms reglas gramaticales de Java. o Errores de ejecucin.- Son errores que producen una terminacin anmala o una terminacin no esperada en tiempo de ejecucin, por ejemplo una divisin por cero. o Error lgico.- Es cuando un programa no realiza la operacin que estaba prevista. Ejemplo: Error de Sintaxis:
Error de Ejecucin:
Error de Lgico:
La lnea import javax.swing.JOptionPane; es la sentencia que declara la importacin de la clase JOptionPane, la cual se encuentra en el paquete javax.swing. Este paquete tiene muchas clases que ayudan a los programadores en Java a crear interfaces grficas de usuarios (GUIs por sus siglas en ingles). Esta sentencia JOptionPane.showMessageDialog(null, "Hola Mundo" ); llama al mtodo showMessageDialog de la clase JOptionPane, al cual le enviamos dos argumentos, el primero determina la posicin de la ventana en la pantalla, si es null la pondr en el centro y el segundo, es la cadena que vamos a desplegar dentro de la ventana. En la lnea System.exit( 0 ); utiliza el mtodo exit de la clase System para terminar la aplicacin. Esta clase pertenece al paquete java.lang el cual se carga por defecto sin tener que importarlo con la sentencia import. Diagrama de flujo de la depuracin de un programa:
Inicio Editar Programa Fuente Compilar Programa Fuente
Errores de Sintaxis
No
Si
Si
Errores Lgicos
No
Si
fin
Los comentarios sirven para documentar los programas, adems que ayudan a los programadores a comprender las acciones que realizan los programas, mtodos o sentencias en un programa. En Java existen dos formas de definir comentarios, estos son: Cometarios por Lnea: Se utilizan dos barras verticales // y despus el comentario. Se utiliza una barra vertical y un asterisco, posteriormente se ponen los comentarios, los cuales pueden utilizar varias lneas y para terminar el comentario se emplea un asterisco y una barra vertical. /* comentario */.
Ejemplo: Comentario por lnea: // Mi primer programa en Java // Elaborado el 20 de Agosto de 2005 // En la materia de programacin Cometario por Bloque: /* Mi primer programa en Java Elaborado el 20 de Agosto de 2005 En la materia de programacin */ Cuando el compilador encuentra un comentario, este ignora todo lo que este dentro de l. I.3. Variables y constantes. Antes de ver las variables definiremos los tipos de datos primitivos que existen en el Java. En la siguiente tabla presentamos los 8 tipos de dato primitivos, el nmero de bits que ocupan y el rango de valores que pueden tomar.
Tamao en bits 1 16 8 16 32 64
Rango de valores true o false Nota: El No. de bits puede variar segn la plataforma \u0000 hasta \uFFFF' Conjunto Unicode de ISO -128 a +127 -27 a 27 1 -32,768 a +32,767 -215 a 215 1 -2,147,483,648 a +2,147,483,647 -231 a 231 1 -9,223,372,036,854,775,808 a +9,223,372,036,854,775,807 -263 a 263 1 Rango negativo: -3.4028234663852886E+38 hasta -1.40129846432481707E-45 Rango positivo: 1.40129846432481707E-45 hasta 3.4028234663852886E+38 Rango negativo: -1.797693134862157E308 hasta -4.94065645841246544E324 Rango positivo: 4.94065645841246544E324 hasta 1.797693134862157E308
float
32
double
64
Tokens elementos lxico de los programas Existen 5 clase de tokens: identificadores, palabras reservadas, literales, operadores y otros. Identificadores Los identificadores pueden representar variables, constantes, mtodos, nombres de archivos, etc.
Regla para formar un identificador: 1. 2. 3. 4. 5. 6. Debe comenzar por una letra Despus de la 1er. Letra puede contener letras, dgitos o guin de piso No estn permitidos los espacios en blanco No deben formar palabras reservadas Java es sensibles a las maysculas y minsculas En Java la longitud de los identificadores no tiene lmite.
Variables Una variable es un identificador donde se almacena un valor con un cierto tipo de dato. Las variables de tipos bsicos almacena datos del tipo primitivos, las variables de clases o variables de objetos, hacen referencias a objetos. Una constante es una variable cuyo contenido no puede ser modificado. Declaracin de variables Ejemplo:
tipo identificador
Una de las variantes que se puede hacer en una declaracin es inicializar una variable con un valor a ser declarada.
tipo
identificador
Expresin
,
Ejemplos: int x, y = 0; float a, b, c = 100.0f; char letra1 = A; Se pueden declarar una variable en tres lugares: o En una clase, como miembro de clase o Al principio de un mtodo o bloque de cdigo o En el punto de utilizacin.
Constantes En Java puede distinguirse dos tipos de constantes: o o Constantes Literales Constantes Declaradas
Constantes Literales Las constantes literales se clasifican en cuatro tipos: o o o o Constantes Enteras Constantes de Punto Flotante Constantes Carcter Constantes Cadena
Constantes Enteras: Las constantes enteras requieren seguir las siguientes reglas: o No utilizar signo de puntuacin o separacin por comas. 1250 en lugar de 1,250 o 1250.0. Para un valor tipo long forzar la conversin poniendo una letra L mayscula o minscula al final del nmero. 1024 (Por defecto Java toma como int todas las cifras enteras) y 1024L (representa un tipo de dato long). Para representar un nmero Octal (base 8) debe comenzar con un 0 (cero) y posteriormente los dgitos en octal (los nmeros deben estar en un rango de 0 al 7). Por ejemplo el nmero 511 en decimal es el nmero 0777 en octal. Para representar un nmero en Hexadecimal (base 16), se utiliza el prefijo 0x o 0X y posteriormente los nmeros en hexadecimal (incluyendo las letras A, B, C, D, E y F). Por ejemplo el nmero 511 en decimal se representa con 0x1FF en hexadecimal.
Constantes de Punto Flotante: Una constante de punto flotante representa un nmero real; -820.375 o 0.00002787, tambin se puede representar en notacin cientfica: -8.20375E+02 o 2.787E-05. El lenguaje Java asume por defecto que todas las constantes reales son del tipo double, si desea inicializar una variable tipo float debe utilizar el prefijo f o F al final de nmero: float c = 100.0f;
Constantes Carcter: Una constante carcter es un char encerrado entre comillas sencillas: A, c. Tambin se pueden representar mediante el formato \nnn, siendo nnn un nmero octal, por ejemplo el carcter de sigma () con cdigo ASCII 228 y octal 344 se representa: char sigma = \344;. Dado que un dato tipo char ocupa 2 bytes y el rango de caracteres del cdigo ASCII es de 0 a 255 (0 a 377 en octal), por lo tanto ocupa el byte de menor peso de los dos bytes que ocupa el tipo char. Otra forma de representar caracteres es con el formato hexadecimal \uhhhh, donde hhhh es un nmero hexadecimal que representea un carcter del cdgo Unicote, por ejemplo: char diagonal = \u1111. Adems ciertos caracteres especiales utilizan la diagonal invertida (\), al cual se le llama carcter de escape. Carcter de Escape \n \r \t \b \f \\ \ \ \000 \uhhhh Aritmtica con caracteres Java Es posible realizar operaciones aritmticas sobre datos tipo carcter, por ejemplo: char c; c = (char) 'T' + 5; System.out.println( c ); Dado que el cdigo ASCII de la letra T es 84 y al sumamos 5 produce un 89, ahora por medio de un cast lo convertimos al tipo char obtendremos la letra Y. Constantes Cadena: Una constante cadena es un conjunto de caracteres encerrados entre comillas dobles: Cadena Vacia Hola Mundo 123 @#$%^& Descripcin Nueva lnea Retorno de carro Tabulador Retroceso Avance de pgina Diagonal invertida Comilla sencilla Comilla doble Nmero octal Nmero hexadecimal
Se puede concatenar cadenas utilizando el operador +: ABC + 123 + $%& equivale a: ABC123$%& Los caracteres de escape pueden incluirse en una constante cadena, ejemplo: Este es un ejemplo\n de cmo funciona los caracteres de escape\ten una cadena Este es un ejemplo de cmo funciona los caracteres de escape Constantes Declaradas Por medio del cualificador final permite dar nombres simblicos a constantes.
en una cadena
final tipo
identificador
Valor
Ejemplo: final int MESES = 12; // Constante simblica final float IVA = 0.15f; final char COMA = ,; Una constante simblica especifica que el valor no puede ser modificado durante la ejecucin del programa, se puede decir que el valor es final y por tanto no puede ser modificado. Los nombres de las constantes se acostumbra escribirlos con letras maysculas. I.4. Objetos que permiten E/S por consola. En Java, la entrada y salida se lee y escribe en flujos (streams). La fuente bsica de entrada de datos es el teclado y la fuente de salida es pantalla. La clase System define dos referencias a objetos static para la gestin de entrada (in) y salida (out). Salida (System.out) El objeto out definida en la clase System est asociado con el flujo de salida, que dirige los datos a consola y permite visualizarlos en pantalla, por ejemplo: System.out.println(Esta es una cadena); Se visualizar en pantalla: Esta es una cadena.
Descripcin del mtodo print: void print(cadena) Despliega una cadena en pantalla.
void println(cadena) Despliega una cadena en pantalla y al final un carcter de nueva lnea (\n). Con estos mtodos se puede escribir cualquier cadena o dato de los tipos primitivos, como por ejemplo. System.out.println( "Valores de las Variables: \n" + "a=" + a +"\n" + "b=" + b +"\n" + "x=" + x +"\n" + "y=" + y ); Entrada (System.in)
Por medio de un objeto Scanner se puede leer datos desde un programa, esta clase pertenece al paquete java.util y debe ser importada. Para poder utilizarlo instancie un objeto de la siguiente forma: Sacanner identificador = new Scanner (System.in);
Esta expresin crea un objeto Scanner y determina que leer los datos desde teclado mediante los siguientes mtodos: identificador.nextBoolean() identificador.nextByte() identificador.nextShort() identificador.nextInt() identificador.nextLong() identificador.nextFloat() identificador.nextDouble() identificador.next() identificador.nextLine() Para Booleanos Para nmeros Enteros tipo byte Para nmeros Enteros tipo short Para nmeros Enteros tipo int Para nmeros Enteros tipo long Para nmeros flotantes Para nmeros doubles Para el siguiente token Para una lnea
El siguiente ejemplo lee dos nmeros enteros desde Windows, los suma y muestra el resultado en una ventana.
Al convertir datos tipo String a tipo int (con Integer.parseInt()) manda una excepcin de formato de numero si ocurre un error.
El mtodo showMessageDialog de la clase JOptionPane tiene varias formas de enviarles parmetros: public static void showMessageDialog(Component componentePadre, Object Mensaje) Donde los parametros: componentePadre Mensaje Determina la ventana en que se desplegara el mensaje, si es null, se despliega en la ventana por defecto. Objeto a desplegar
public static void showMessageDialog(Component componentePadre, Object Mensaje, String Titulo, int TipodeMensaje) Donde los parametros: componentePadre Mensaje Titulo TipodeMensaje Determina la ventana en que se desplegara el mensaje, si es null, se despliega en la ventana por defecto. Objeto a desplegar Cadena de characters de la caja de dialogo Valor entero que determina que imagen se despliega segn la siguiente tabla: Icono Descripcin Ventana de Error Ventana Informativa
Icono
JOptionPane.QUESTION_MESSAGE
Sin Icono
Ventana estndar
Elabore un programa en Java que lea tres calificaciones e imprima el promedio. Clases correspondientes a los tipos bsicos Java proporciona la declaracin de una clase para cada uno de los tipos bsicos, denominadas clases envoltorio. Estas clases estn incorporadas en el paquete java.lang, el cual se importa automticamente en todos los programas de Java. Clase Boolean Ayuda a manipular los valores boolean mas fcilmente. Campos final static Boolean FALSE Descripcin Objeto Boolean constante con valor false (falso) Objeto Boolean constante con valor true (verdadero)
Mtodos
Descripcin Crea un Objeto Boolean con el valor especificado en s. Si s tiene un valor de true asigna este valor, en caso contrario asigna un valor de false.
Boolean (String s)
Descripcin Crea un Objeto Boolean con el valor boolean especificado. Regresa el valor almacenado en el Objeto Boolean. Regresa true si el otroObjeto es un boolean con el mismo valor. Regresa el valor del Objeto Boolean tipo String. Regresa un Objeto Boolean y le asigna el valor de la cadena especificada.
boolean booeleanValue()
String toString()
Clase Character
Clase contenedora para manejar valores char. Descripcin Crea un Objeto Character con el valor especificado Regresa el valor del Objeto Character. Convierte un dgito representado por ch, a un int en la base especificada. Regresa true si otroObjeto es un Character con el mismo valor char. Regresa un char que representa el valor del digito en la base especificada. Regresa true si el valor de char se encuentra entre 0 a 9. Regresa true si ch es una letra.
Mtodos Character(char valor) Character charValue() static int digit(char ch, int base)
Descripcin Regresa true si ch es una letra o digito. Regresa true si ch es una letra minscula. Regresa true si el valor de ch es: b, \t, \f, \n o \r. Regresa true si ch es una letra mayscula. Regresa el valor de ch como letra minscula. Regresa el valor del Objeto Character como una cadena. Regresa el valor de ch como letra mayscula.
String toString()
Clase Double
Clase envoltorio para manejo de valores double. Campos Descripcin Valor mximo de un double 1.797693134862157E308 Valor mnimo de un double -4.94065645841246544E324
Este valor especial representa un double que no es un nmero (Not a Number). Se le asigna el valor 0.0/0.0. No es igual a nada, ni siquiera a s mismo.
final static double NEGATIVE_INFINITY Infinito negativo -1.0/0.0. final static double POSITIVE_INFINITY Infinito positivo 1.0/0.0
Descripcin Crea un Objeto Double con el valor especificado Crea un Objeto Double, asumiendo que s representa un valor double vlido. Regresa el valor del Objeto Double. Regresa true si otroObjeto es un Double y tiene el mismo valor. Regresa el valor double como un float. Regresa el valor double como int.
Regresa true si el valor del double es POSITIVE_INFINITY o NEGATIVE_INFINITY. Regresa true si el valor de d es igual a POSITIVE_INFINITY o NEGATIVE_INFINITY Regresa true si el valor del double es NaN.
double doubleValue() boolean equals(Object otroObjeto) float floatValue() int intValue() boolean isInfinite() static boolean isInfinite(double d)
boolean isNaN()
Regresa true si el valor del d es igual al valor NaN. Regresa el valor del double como long. Regresa un double representado por el String s. Regresa el valor del double como cadena. Convierte el double d a una cadena. Convierte la cadena especificada a un Objeto Double.
Clase float Clase envoltorio para manejo de valores de punto flotante. Campos final static float MAX_VALUE Descripcin Valor mximo de un float 3.4028234663852886E+38 Valor mnimo de una float -1.40129846432481707E-45 Este valor especial representa un float que no es un nmero (Not a Number). Se le asigna el valor 0.0/0.0. No es igual a nada, ni siquiera a s mismo. Infinito negativo -1.0/0.0. Infinito positivo 1.0/0.0
Descripcin
Crea un Objeto Float con el valor especificado.
Crea un Objeto Float con el valor double especificado. Crea un Objeto Float, asumiendo que s representa un valor float vlido. Regresa el valor del Objeto Float como un double. Regresa true si otroObjeto es un Float y tiene el mismo valor. Regresa el valor float del Float. Regresa el valor float como int.
double doubleValue()
Descripcin
Regresa true si el valor del float es POSITIVE_INFINITY o NEGATIVE_INFINITY. Regresa true si el valor de f es igual a POSITIVE_INFINITY o NEGATIVE_INFINITY
boolean isNaN()
Regresa true si el valor del float es NaN. Regresa true si el valor del f es igual al valor NaN. Regresa el valor del float como long. Regresa un float representado por el String s. Convierte la cadena especificada a un Objeto Float. Regresa el valor del float como cadena. Convierte el float d a una cadena.
Clase envoltorio para manejo de valores int. Campos Descripcin Valor mximo de un int 2,147,483,647 Valor mnimo de una int -2,147,483,648
Descripcin Crea un Objeto Integer, asumiendo que s representa un valor int vlido. Regresa el valor del Objeto Integer como un double. Regresa true si otroObjeto es un Integer y tiene el mismo valor. Regresa el valor Integer como float. Regresa el valor del int. Regresa el valor del int como long. Regresa un int representado por la String s. Regresa un int representado por el String s en la base especificada. Regresa una String que representa al entero i en base binario sin signo. Regresa un String que representa al entero i en base hexadecimal sin signo. Regresa un String que representa al entero i en base octal sin signo. Regresa el valor int como cadena. Regresa el valor de i como cadena. Regresa el valor de i en la base especificada. Regresa un Objeto Integer con el valor del String s.
boolean equals(Object otroObjeto) float floatValue() int intValue() long longValue() static int parseInt(String s) throws NumberFormatException static int parseInt(String s, int base) throws NumberFormatException static String toBinaryString(int i)
static String toOctalString(int i) String toString() static String toString (int i) static String toString(int i, int base) static Integer valueOf(String s) throws NumberFormatException
Descripcin Regresa un Objeto Integer con el valor del String s en la base especificada.
Clase Long Clase envoltorio para manejo de valores long. Campos final static int MAX_VALUE Descripcin Valor mximo de una long 9,223,372,036,854,775,808 Valor mnimo de una long -9,223,372,036,854,775,808
Descripcin Crea un Objeto Long con el valor especificado. Crea un Objeto Long, asumiendo que s representa un valor long vlido. Regresa el valor del Objeto Long como un double. Regresa true si otroObjeto es un Long y tiene el mismo valor. Regresa el valor Long como float. Regresa el valor del long como int. Regresa el valor long. Regresa un long representado por la String s.
boolean equals(Object otroObjeto) float floatValue() int intValue() long longValue() static long parseLong(String s) throws NumberFormatException
Mtodos
static long parseLong(String s, int base) throws NumberFormatException
Descripcin Regresa un long representado por el String s en la base especificada. Regresa una String que representa al entero l en base binario sin signo. Regresa un String que representa al entero l en base hexadecimal sin signo. Regresa un String que representa al entero l en base octal sin signo. Regresa el valor long como cadena. Regresa el valor de l como cadena. Regresa el valor de l en la base especificada. Regresa un Objeto Long con el valor del String s. Regresa un Objeto Long con el valor del String s en la base especificada.
static String toOctalString(long l) String toString() static String toString (long l) static String toString(long l, int base)
static Long valueOf(String s) throws NumberFormatException
Clase String
La Clase String proporciona los mecanismos para el manejo de cadenas. Ya que no se puede cambiar el valor de un String una vez que se ha creado, esta clase se usa principalmente para analizar, manipular y obtener los valores de las cadenas. Aunque hay mtodos que permiten modificar y aadir al valor de la cadena, estos mtodos no modifican el String en si, sino que regresan un nuevo String con los valores deseado. Mtodos Descripcin Crea un Objeto String. Crea un Objeto String basado en el arreglo ch[].
Mtodos String(String s)
Descripcin Crea un Objeto String con el valor s especificado. Regresa el carcter que se encuentra en la posicin pos. Regresa un int donde: <0 El valor del String es menor al otroString. El valor del String es igual a otroString El valor del String es mayor a otroString.
>0
String concat(String str) boolean equals(Object otroObjeto) boolean equalsIgnoreCase(String OtroString) int length()
Regresa true si otroObjeto es String y tiene el mismo valor. Compara el String con otroString sin importar las maysculas y minsculas. Regresa la longitud del String Regresa la posicin donde se encuentra str en el String, en caso de no encontrarlo regresa 0.
Regresa la posicin donde se encuen-tra str en el String comenzando en la posicin ini.
Regresa la primera posicin donde se encuentra ch en el String. Regresa la primera posicin donde se encuentra ch en el String comenzando en la posicin ini.
Descripcin Regresa la ltima posicin donde se encuentra str en el String. Regresa la ltima posicin donde se encuentra str en el String que se encuentre antes de la posicin ini. Remplaza todos los caracteres viejoch por el carcter nuevoch. Regresa una subcadena desde inicio hasta fin. Regresa una subcadena desde inicio hasta final de la cadena. Regresa el valor del String en minsculas Regresa el valor del String. Regresa el valor del String en maysculas. Regresa la String sin los espacios a la izq y der.
String replace(char viejoch, char nuevoch) String substring(int inicio, int fin)
String trim() Static String valueOf(double d) static String valueOf(float f) static String valueOf(long l) static String valueOf(int i) static String valueOf(char ch) static String valueOf(boolean b) Static String valueOf(Object obj)
Producto de Aprendizaje: Elabore un programa en Java que lea el nombre completo de una persona. El nombre de pila debe estar separado de los apellidos por medio de un asterico: Ejemplo: Jos*Prez Ramos El programa debe de invertir el nombre imprimiendo primero los apellidos y posteriormente el nombre: Ejemplo: Prez Ramos Jos
I.5. Operadores. Los operadores realizan algunas funciones en uno o dos operandos. Los operadores que requieren un operador se llaman operadores unarios y los operadores que requieren dos operandos se llaman operadores binarios. Los operadores unarios en Java pueden utilizar la notacin de prefijo o de sufijo. operador operando operador operador op1 operador op2 La notacin de prefijo significa que el operador aparece antes de su operando. La notacin de sufijo significa que el operador aparece despus de su operando. Todos los operadores binarios de Java tienen la misma notacin, es decir aparecen entre los dos operandos.
Adems de realizar una operacin tambin devuelve un valor. El valor y su tipo dependen del tipo del operador y del tipo de sus operandos.
Operadores Aritmticos Operador + * / % Significado Suma Resta Multiplicacin Divisin Modulo Ejemplo nEsto + nAquello nEsto nAquello nEsto * nAquello nEsto / nAquello nEsto % nAquello
Nota:
El lenguaje Java extiende la definicin del operador + para incluir la concatenacin de cadenas.
Los operadores + y - tienen versiones unarias que seleccionan el signo del operando. Operador + Uso + op - op Descripcin Indica que el valor es positivo Indica que el valor es negativo
Adems, existen dos operadores de atajos aritmticos, ++ y -Smbolo -Sentencia abreviada a-Sentencia no abreviada a=a-1 Descripcin Primero se utiliza el valor de la variable a y despus se decrementa en uno Primero se decrementa en uno el valor de a y despus se utiliza la variable a Primero se utiliza el valor de la variable a y despus se incrementa en uno Primero se incrementa en uno el valor de a y despus se utiliza la variable a
--a
a=a-1
++
a++
a=a+1
++a
a=a+1
Operadores Relacionales Los valores relacionales comparan dos valores y determinan la relacin entre ellos.
Uso op1 > op2 op1 >= op2 op1 < op2 op1 <= op2 op1 == op2 op1 != op2
Devuelve true si op1 es mayor que op2 op1 es mayor o igual que op2 op1 es menor que op2 op1 es menor o igual que op2 op1 y op2 son iguales op1 y op2 son distintos
I.6. Tipos de datos. Existen dos categoras de datos principales en el lenguaje Java: los tipos primitivos y los tipos referenciados. I.7. Palabras reservadas. Las palabras reservadas (keywords) son tems que tienen un significado especial en el leguaje y no pueden ser utilizados para otro fin. abstrae boolean break byte byvalue case cast match char class const continue default do double else extends false final finally float for future generic goto if implements import inner instanceof int inteface long native new null operator outer package private proteced public return rest short static stricftp super switch synchronized this throw throws transient true try var void volatile while
I.8. Expresiones. Las expresiones son combinaciones de constantes, variables, operadores, operandos, parntesis y funciones.
Operador Constante
a + (b 3) + c
Opererando o Variable Funcin
Expresiones Aritmticas Las expresiones aritmticas son anlogas a las funciones matemticas.
5+3=8
32=1
5*3=15
17/2=8
x (z + w) y
17/2.0=8.5
23 % 6 = 5
b b 2 4ac 2a
x+ y u w+ a
Expresiones Lgicas
r 2
5x 2 + 2x 3
7 x 2 + 2 x + 25 x+ y
Otro tipo de expresiones son las lgicas, o booleanas, cuyo valor puede ser true (verdadero) o false (falso) y se denominan expresiones booleanas en honor a matemtico George Boole, quien desarrollo el lgebra booleana. Mediante los operadores relacionales se pueden hacer comparaciones entre valores tipo numrico y carcter. Por ejemplo: 3<6V 0>9F 8 <= 5 F A=3yB=4 A>B F A<B V A<=B V B==4 V X=-2 Y = 3 Z = 9 X>Z F Y<X F Z!=X V
Operadores Lgicas Java cuenta con los operadores lgicos para formar condiciones ms complejas. Los operadores lgicos son: Operador && || & | ^ ! Descripcin And condicional Or condicional And lgico Or lgico Or exclusivo Negacin Corto Circuito Si No
Tablas de verdad de los operadores lgico: && And Condicional A false false true true B false true false true A && B false false false true
Con un operador && (And condicional) ser true si y solo si todas sus entradas son true.
|| Or Condicional A false false true true B false true false true A || B false true true true
Con un operador || (Or condicional) ser true si por lo menos una de sus entradas es true. Operadores & And lgico y | Or lgico funcionan de manera idntica a los operadores && And condicional y || Or condicional, con la excepcin de de que los operadores lgicos siempre se evaluaran todas las expresiones (es decir, no realizan una evaluacin de corto circuito). ^ Or Exclusivo A false false true true B false true false true A^B false true true false
Con un operador ^ (Or exclusivo) es true si y solo si una de sus operandos es true y el otro es false
Por medio del operador ! (Negacin) se invierte el significado de la condicin. A diferencia de los operadores &&, ||, &, | y ^ que son operadores binarios, el operador ! es unario. Por ejemplo: Si A=3, B=-2 y C=7 a) b) c) d) (A>5) || (B<C) (A!=B) && (B==C) (A>=B) & (C>=5) !(A<=9) | (5>B) V F V V
Reglas de prioridad Las expresiones que tienen dos o ms operadores requieren de reglas matemticas que permitan determinar el orden de las operaciones, a estas reglas se les llama reglas de prioridad. Prioridad 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Operadores new (objeto) . [] () Agrupacin ++ -- prefijo ++ -- postfijo ~ ! - + Unarios (tipo) Cast * / % +<< >> >>> < <= > >= instanceof == != & ^ | && || ? : condicional = *= /= %= += -= , Asociatividad I-D D-I I-D D-I D-I I-D I-D I-D I-D I-D I-D I-D I-D I-D I-D D-I D-I I-D
I.9. Estructuras de control. Las estructuras de control determinan el comportamiento de un programa, las cuales se dividen en tres grupos que son sentencias, seleccin y repeticin. I.9.1. Asignacin. Operadores de Asignacin Java proporciona varios operadores de asignacin que permiten realizar operaciones aritmticas y lgicas.
Smbolo = *= /= %= += -=
Descripcin El valor de b se asigna a la variable a El valor de a se multiplica por b y se asigna a la variable a El valor de a se divide por b y se asigna a la variable a El valor de a se divide por b y el resto (o residuo) se asigna a la variable a El valor de a se suma a valor de b y se asigna a la variable a El valor de a se le resta el valor de b y se asigna a la variable a
I.9.2. Seleccin. Las estructuras de seleccin se utilizan para la toma de decisiones lgicas. Dentro de la estructura selectiva se evala una expresin lgica y en funcin del resultado se realiza una accin u otra.
Condicin
Si Accin
if (condicin) {accin1; accin2,,accin n} ; o if (condicin) { accin1; Nota: El if solo soporta una instruccin, si accin 2; desea poner mas de una sentencia dentro del . if debe utilizar un bloque de cdigo ({..}). . accin n; } Producto de Aprendizaje: Elabore un programa en Java que lea una cantidad, si la cantidad es mayor a 1500 restarle el 5% a la cantidad e imprimir el resultado; si no es mayor simplemente imprimir la cantidad.
Condicin Si Accin 1
No
Accin 2
if con mas de una sentencia y usando un boque de cdigo: if (condicin) { accin1; accin 2; . . accin n; } else { accin1; accin 2; . . accin n; } Producto de Aprendizaje: Elabore un programa en Java que lea dos nmeros e imprima el mayor de ellos. El primero mayor:
El Segundo Mayor:
No funciono corectamente porque los nmeros son iguales. Producto de Aprendizaje: o Elabore el programa que corrija esta anomalia. o Elabore un programa en Java que lea tres nmeros e imprima el mayor de ellos. o Elabore un programa que calcule el salario de un obrero. El salario se calcula sumando al sueldo base que es de $600.00 la comisin de por horas extras, que se calcula en base a la siguiente tabla: 1 10 hrs c/hr a 18 pesos 11 20 hrs c/hr a 20 pesos 21 y ms hrs c/hr a 25 pesos Seleccin mltiple Diagrama de Flujo
Sentencia switch Sintaxis de Seleccin mltiple: switch (selector) { case constante 1: Accin 1; break; case constante 2: Accin 2; break; default: Accin n; }
switch (letra) { case a: caseA: case : case A: case e: caseE: case : case : case i: caseI: case : case : case o: caseO: case : case : case u: caseU: case : case : System.out.println(letra + es vocal); }
Elabora un programa que lea un nmero de 1 al 7 e imprima que da de las semana es (1 Lunes, 2 Martes, , 7 Domingo)
Producto de Aprendizaje: o Elabore un programa que le un nmero entre 0 y 9 e imprima su valor con letra. o Elabore un programa que lea un nmero del mes e imprima el nombre del mes como cadena.
Operador ? Java mantine, a semejanza de C, un tercer mecanismo de de seleccin, el cual se denomina condicional y su formato es: condicin ? expresin 1: expresin2 Se evalua la condicin, si es true (verdadero) entonces regresa como resultado la expresin1, si el valor es false (falso) entonces regresa el valor de la expresin2. Ejemplo:
num1 > num2 ? System.out.println(El mayor es: + num1) : System.out.println(El mayor es: + num2)
while
Falso Condicin Verdadero Proceso
do while
Proceso Verdadero Falso Condicin
for (Inicializacin; Condicin; Incremento) sentencia; for (Inicializacin; Condicin; Incremento) { sentencia 1; sentencia 2; sentencia n;
2.
do while 1. do sentencia; while (condicin); 2.do { sentencia 1; sentencia 2; sentencia n; } while (condicin);
Producto de Aprendizaje: o o o o o o Elabore un programa que realice la suma de los nmeros del 1 al 100 e imprima el resultado. Elabore un programa que lea serie de nmeros e imprima su media. El final de los nmeros de denota con un -1. Elabore un programa que lea 10 calificaciones e imprime el promedio. Elabore un algoritmo que lea dos nmeros diferentes, he imprima el rango del nmero ms pequeo al nmero ms grande. Elabore un programa que lea un nmero e imprimas su factorial. Elabore un programa que lea un nmero positivo diferente de cero e imprima la secuencia de nmeros en forma descendente hasta el cero.
Sentencias de Ruptura break La sentencia break se utiliza dentro de los ciclos para una terminacin anormal, es decir una terminacin antes de lo previsto. Su sintaxis es: break; Ejemplo: while (condicin) { if (condcin2) break; sentencias; } continue La sentencia continue en los ciclos se utiliza para indicarle al ciclo que continue con la siguiente iteracin. Su sintaxis es la siguiente: continue;
Ejemplo: El siguiente programa imprime los nmeros del 1 al 30 con excepcin de los nmeros mltiplos de 3.