SlideShare una empresa de Scribd logo
Jesús Navarro | Programación orientada a objetos | 01 de noviembre de 2015
Manual interno de Java
JAVA SE 8
P á g i n a | 1
Manual interno de Java | JAVA SE 8
Java
Java es un lenguaje de programación orientado a objetos que se popularizó a partir del lanzamiento
de su primera versión comercial de amplia difusión, la JDK 1.0 en 1996. Actualmente es uno de los
lenguajes más usados para la programación en todo el mundo.
Este manual está basado en Java SE (Standard Edition) en su versión 8 cuya fecha de lanzamiento fue
en marzo del 2014. Para mayo del 2015 Java se ejecuta en más de 7 billones de dispositivos y tiene una
comunidad de más de 9 millones de desarrolladores a nivel mundial.
Palabras reservadas
Las palabras reservadas son identificadores predefinidos que tienen un significado para el compilador
y por tanto no pueden usarse como identificadores creados por el usuario en los programas.
abstract continue for new switch
assert default goto package synchronized
boolean do if private this
break double implements protected throw
byte else import public throws
case enum instanceof return transient
catch extends int short try
char final interface static void
class finally long strictfp volatile
const float native super while
P á g i n a | 2
Manual interno de Java | JAVA SE 8
Tipo de datos
Tipos de datos primitivos
Tipo de
dato
Representación Tamaño
(Bytes)
Rango de valores Valor por
defecto
Clase
asociada
byte Numérico
Entero con signo
1 -128 a 127 0 Byte
short Numérico
Entero con signo
2 -32768 a 32767 0 Short
int Numérico
Entero con signo
4 -2147483648 a
2147483647
0 Integer
long Numérico
Entero con signo
8 -9223372036854775808
a 9223372036854775807
0 Long
float Numérico en
Coma flotante
de precisión
simple Norma
IEEE 754
4 ± 3.4x10-38 a ±
3.4x1038
0.0 Float
double Numérico en
Coma flotante
de precisión
simple Norma
IEEE 754
8 ± 1.8x10-308 a ±
1.8x10308
0.0 Double
char Carácter
Unicode
2 u0000 a uFFFF u0000 Character
boolean Dato lógico - True o False false Boolean
void - - - - Void
P á g i n a | 3
Manual interno de Java | JAVA SE 8
Operadores aritméticos
Nombre Símbolo Asignación Ejemplo
Suma “+” “+=” “x+y”
Resta “-” “-=” “x-y”
Multiplicación “*” “*=” “x*y”
División “/” “/=” “x/y”
Modulo “%” “%=” “x%y”
Incremento “x++” n/d “x++”
Decremento “x--” n/d “x—“
Operadores relacionales y lógicos
Nombre Símbolo Ejemplo
Asignación “ = ” “ x=5 ”
Comparación “ == ” “ x==y ”
Diferente “ != ” “ x!=y ”
Menor que “ < ” “ x<y ”
Menor o igual que “ <= ” “ x<=y ”
Mayor que “ > “ “ x>y ”
Mayor o igual que “ >= ” “ x=>y ”
NOT “ ! ” “ !x ”
AND “ && ” “ x&&y ”
OR “ || ” “ x||y ”
XOR “ ^ ” “ x^y ”
P á g i n a | 4
Manual interno de Java | JAVA SE 8
Documentación
Cada programa que se realice deberá contar con la información necesaria para saber quién lo hizo,
versión y fecha, así como el debido uso de los comentarios necesarios para el mantenimiento del
código.
Cada programa contara con la siguiente información:
Programa: Hacer referencia al nombre del programa
Utilidad: Para qué sirve el programa
Programador: Siempre puede haber más de uno
Fecha: La fecha en que se realiza la última modificación a la versión correspondiente
Versión: Modificaciones mayores hacen que cambie el primer digito, menos solo el decimal
Changelog: Lista de cambios entre versiones del programa
P á g i n a | 5
Manual interno de Java | JAVA SE 8
Variables y Constantes
Una variable es una zona de memoria donde se almacena un valor dado, asignándole un nombre para
su posterior referencia. Una constante es una variable a la que no se lepuede modificar el valor después
de su declaración. Para declarar una constante en Java se utiliza la palabra final delante de la
declaración de la variable.
Modificadores de acceso
Se utilizan para definir el nivel de ocultación o visibilidad de los atributos, funciones y métodos, así
como el de la misma clase. Ordenados de menor a mayor visibilidad los modificadores de acceso son
los siguientes:
Modificador de acceso Efecto Aplicable en
private Solo puede ser usado en el
interior de su propia clase
Atributos
Métodos
Sin modificador Solo puede ser usado por las
clases dentro de su mismo
paquete
Clases
Atributos
Métodos
protected El elemento puede ser utilizado
por cualquier clase dentro de
su paquete y por cualquier
subclase
Atributos
Métodos
public El elemento es visible desde
cualquier clase
Clases
Atributos
Métodos
P á g i n a | 6
Manual interno de Java | JAVA SE 8
Programación estructurada
La programación estructurada es un paradigma de programación orientado a mejorar la claridad,
calidad y tiempo de desarrollo de un programa de computadora, utilizando únicamente subrutinas y
tres estructuras: secuencia, selección (if y switch) e iteración (bucles for y while), considerando
innecesario y contraproducente el uso de la instrucción de transferencia incondicional (GOTO), que
podría conducir a "código espagueti", que es mucho más difícil de seguir y de mantener, y era la causa
de muchos errores de programación.
SENTENCIA IF
En programación, una sentencia condicional es una instrucción o grupo de instrucciones que se
pueden ejecutar o no en función del valor de una condición. (Ejemplo 1).
Código
P á g i n a | 7
Manual interno de Java | JAVA SE 8
SWITCH
La instrucción switch es una forma de expresión de un anidamiento múltiple de instrucciones if ...
else. Su uso no puede considerarse, por tanto, estrictamente necesario, puesto que siempre podrá ser
sustituida por el uso de if. No obstante, a veces nos resultará útil al introducir mayor claridad en el
código. (Ejemplo 2).
Código
P á g i n a | 8
Manual interno de Java | JAVA SE 8
BUCLE FOR
El bucle for se utiliza para repetir una o más instrucciones un determinado número de veces. De entre
todos los bucles, el for se suele utilizar cuando sabemos seguro el número de veces que queremos que
se ejecute. (Ejemplo 3).
BUCLE WHILE
El Bucle while o bucle mientras es una estructura cuyo propósito es repetir un bloque de código
mientras una condición se mantenga verdadera. (Ejemplo 4).
BUCLE DO WHILE
La sentencia de iteración do-while es de tipo pos prueba. Primero realiza las acciones luego pregunta.
(Ejemplo 5).
P á g i n a | 9
Manual interno de Java | JAVA SE 8
Arreglos
Un array (arreglo) en Java es una estructura de datos que nos permite almacenar un conjunto de datos
de un mismo tipo. El tamaño de los arrays se declara en un primer momento y no puede cambiar luego
durante la ejecución del programa, como sí puede hacerse en otros lenguajes. Los arrays se numeran
desde el elemento cero, que sería el primer elemento, hasta el n-1 que sería el último elemento. Es
decir, si tenemos un array de 5 elementos, el primer elemento sería el cero y el último elemento sería
el 4.
Aclarar que los valores por defecto son los siguientes:
a) Para números el valor cero “0”
b) Para cadenas y letras el valor vacío
c) Para booleanos el valor false
Array unidimensional (Ejemplo 6):
ARRAY MULTIDIMENSIONAL
En Java es posible crear arrays con más de una dimensión, pasando de la idea de lista, vector o matriz
de una sola fila a la idea de matriz de “m x n” elementos, estructuras tridimensionales, tetra
dimensionales, etc. Gráficamente podría ser descrito así:
int array1 [][] = new int [2][3];
[0][0] [0][1] [0][2]
[1][0] [1][1] [1][2]
Hay que recordar que los elementos empiezan a numerarse por 0. Así, la esquina superior izquierda
de la matriz será el elemento [0][0] y la esquina inferior derecha será el [1][2].
Array multidimensional (Ejemplo 7);
P á g i n a | 10
Manual interno de Java | JAVA SE 8
Funciones
Una función es un fragmento de código que es llamado por su nombre. Se pueden pasar los datos a
operar en (parámetros) y, opcionalmente, puede devolver datos (el valor de retorno).
Función void (No regresa datos)
Función return (Regresa datos)
Llamada a una función (Ejemplo 8)
P á g i n a | 11
Manual interno de Java | JAVA SE 8
Programación orientada a objetos
La programación Orientada a objetos (POO) es un paradigma de programación más cercano a como
expresaríamos las cosas en la vida real. Con la POO tenemos que aprender a pensar las cosas de una
manera distinta, para escribir nuestros programas en términos de objetos, propiedades, métodos y
otras cosas que veremos rápidamente para aclarar conceptos y dar una pequeña base que permita
entender un poco con este tipo de programación. A continuación, se resumen los conceptos básicos
de POO.
Objeto: Entidad existente en la memoria del ordenador que tiene unas propiedades
(atributos o datos sobre sí mismo almacenados por el objeto) y unas operaciones disponibles
específicas (métodos).
Clase: Representa al conjunto de objetos que comparten una estructura y un comportamiento
comunes. Se puede considerar como una plantilla: Define los atributos que componen ese tipo de
objetos y los métodos que pueden emplearse para trabajar con esos objetos. Las clases siguen una
jerarquía: Superclase, Clase y Subclase.
Abstracción: Podríamos definir la abstracción como la "acción de aislar mentalmente o
considerar por separado las cualidades de un objeto, considerar un objeto en su esencia". ¿Qué quiere
decir esta definición? A través de la abstracción conseguimos extraer las cualidades principales sin
detenernos en los detalles.
Encapsulamiento: Se denomina así al ocultamiento del estado, es decir, de los datos
miembro de 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 a ellos, eliminando efectos secundarios
e interacciones. De esta forma el usuario de la clase puede obviar la implementación de 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.
Herencia: Consideraremos la herencia como la transmisión de los métodos y atributos de
una clase a otra. Gracias a la herencia se pueden establecer jerarquías entre clases. Establecer una
jerarquía es un proceso subjetivo, que depende del programador y de los matices de apreciación de
cada uno.
Polimorfismo: Esta característica permite definir distintos comportamientos para un
método dependiendo de la clase sobre la que se realice la implementación. En todo momento tenemos
un único medio de acceso, sin embargo, se podrá acceder a métodos distintos.
P á g i n a | 12
Manual interno de Java | JAVA SE 8
Métodos
Un método es una función que es propiedad de un objeto (en algunos orientado a objetos de sistemas,
es más correcto decir que es de titularidad de una clase). Ser "propiedad" de un objeto/clase significa
que se refiere al método a través del objeto/clase; por ejemplo, en Java si desea invocar el método
"SumaNumeros()" propiedad de la clase "Ejercicio8" entonces se puede crear una instancia llamada
“Operación” y se escribe "Operación.SumaNumeros()". Para mandar llamar un método necesitamos
instanciar la clase donde se encuentra y después mandamos llamar el método.
Instancia de un objeto (Ejercicio 9)
SOBRECARGA DE METODOS (OVERLOADING)
Un método sobrecargado (Ejemplo 10) se utiliza para reutilizar el nombre de un método, pero con
diferentes argumentos. Las reglas para sobrecargar un método son las siguientes:
-Los métodos sobrecargados deben de cambiar la lista de argumentos
-Se puede cambiar el tipo de retorno
-Se puede cambiar el modificador de acceso
-Se pueden crear nuevas o extender las excepciones
-Un método puede ser sobrecargado en la misma clase o en una subclase
La forma en que se manda llamar un método sobrecargado es como cualquier otro método, para
diferenciar entre el método original y el sobrecargado es dependiendo del tipo de argumento que se
envié, es decir, si tenemos dos métodos, uno que acepta de parámetro un float y el otro un int,
dependiendo del tipo de parámetro que le pasemos será el método que se ejecuta.
SOBRESCRITURA DE METODOS (OVERRIDING)
La sobrescritura es la forma por la cual una clase que hereda puede re-definir los métodos de su clase
Padre, de esta manera puede crear nuevos métodos con el mismo nombre de su superclase. Es decir,
si se tiene un método en la clase padre llamado revisar() se puede crear en la clase hija un método
también llamado revisar() pero implementando lo que se necesite. Existen reglas para sobre-escribir
métodos que son las siguientes:
-A diferencia de los métodos sobrecargados los argumentos en los métodos sobrescritos no
deben de cambiar
-En un método sobrescrito no se puede cambiar el tipo de retorno, excepto por los subtipos
del tipo declarado originalmente
P á g i n a | 13
Manual interno de Java | JAVA SE 8
-Las excepciones en estos métodos pueden reducirse o eliminarse, pero no se pueden crear
nuevas o ampliar las ya establecidas
-Los modificadores de acceso no pueden hacerse más, pero si pueden ser menos restrictivos
-En los métodos sobrecargados los argumentos son los que determinan que método es el que
se invocara sin embargo en los métodos sobrescritos el tipo de objeto determina que método
es el elegido
Librería Math
En cuanto a las funciones matemáticas en Java, las funciones disponibles vienen definidas en la clase
Math. Hay muchas funciones disponibles. Se puede consultar la lista completa en la documentación
oficial del API de Java (según versión de Java en uso, por ejemplo, para la versión 8 ver
http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html).
Funciones de mayor importancia en la librería Math
Función Matemática Significado Ejemplo Resultado
abs Valor absoluto int x = Math.abs(2.3); x=2;
atan Arco Tangente double x = Math.atan(1); x= 0.7853981633;
sin Seno double x = Math.sin(0.5); x= 0.479425538;
cos Coseno double x = Math.cos(0.5); x = 0.87758256189037;
tan Tangente double x = Math..tan(0.5); x = 0.54630248984379;
exp Exponenciación double x = Math.exp(1); x= 2.71828182845904;
log Logaritmo double x= Math.log(2.7172); x= 0.99960193833500;
pow Potencia double x = Math.pow(2.3); x = 8.0;
round Redondeo double x = Math.round(2.5); x = 3;
random Numero aleatorio double x = Math.random(); x= 0.20614522323378;
P á g i n a | 14
Manual interno de Java | JAVA SE 8
Observaciones:
- Las funciones matemáticas, al pertenecer a la clase Math, se invocan siempre de la siguiente
manera: Math.funcion(argumentos)
- Las funciones relacionadas con ángulos (atan, cos, sin, tan) trabajan en radianes. Por tanto,
para operar con grados, tendremos que realizar la conversión oportuna
- La función random, permite generar números aleatorios en el rango ]0,1[. Por tanto, el 0 y el
1 están excluidos
- La función exponenciación neperiana o exponenciación de e, matemáticamente significa ex,
que en Java sería Math.exp(x), donde x es un número real y la base es la constante neperiana e= 2.7172...
- La función logaritmo neperiano, matemáticamente significa Ln x, que en Java
correspondería a la expresión Math.log(x).
P á g i n a | 15
Manual interno de Java | JAVA SE 8
Ejemplos
EJEMPLO 1
P á g i n a | 16
Manual interno de Java | JAVA SE 8
EJEMPLO 2
P á g i n a | 17
Manual interno de Java | JAVA SE 8
EJEMPLO 3
EJEMPLO 4
P á g i n a | 18
Manual interno de Java | JAVA SE 8
EJERCICIO 5
EJERCICIO 6
P á g i n a | 19
Manual interno de Java | JAVA SE 8
EJERCICIO 7
P á g i n a | 20
Manual interno de Java | JAVA SE 8
EJERCICIO 8
EJERCICIO 9
P á g i n a | 21
Manual interno de Java | JAVA SE 8
EJERCICIO 10
EJERCICIO 11

Más contenido relacionado

La actualidad más candente

Trabajo practico de lenguaje java.Conceptos. Estructuras. Programacion.
Trabajo practico de lenguaje java.Conceptos. Estructuras. Programacion.Trabajo practico de lenguaje java.Conceptos. Estructuras. Programacion.
Trabajo practico de lenguaje java.Conceptos. Estructuras. Programacion.
Mabel2310
 
Aprendiendo un nuevo lenguaje
Aprendiendo un nuevo lenguajeAprendiendo un nuevo lenguaje
Aprendiendo un nuevo lenguajeaiguajardo
 
Diapositiva estructura de datos unidad 1
Diapositiva estructura de datos unidad 1Diapositiva estructura de datos unidad 1
Diapositiva estructura de datos unidad 1Ezer Ayala Mutul
 
Introducción a la Programaciónen Java
Introducción a la Programaciónen JavaIntroducción a la Programaciónen Java
Introducción a la Programaciónen Java
santosisidrorivera
 
Programación Orientada Objetos Java Unidad 1
Programación Orientada Objetos Java Unidad 1Programación Orientada Objetos Java Unidad 1
Programación Orientada Objetos Java Unidad 1
Gustavo Alejandro Galindo Rosales
 
Tipos de Variables en Java
Tipos de Variables en JavaTipos de Variables en Java
Tipos de Variables en Java
Aldemar Rosas
 
Clase3 Programación Orientada a Objetos
Clase3 Programación Orientada a ObjetosClase3 Programación Orientada a Objetos
Clase3 Programación Orientada a Objetos
desimartinez
 
Elementos De Una Clase
Elementos De Una ClaseElementos De Una Clase
Elementos De Una Clase
Namuel Solorzano Peralta
 
Introduccion java
Introduccion javaIntroduccion java
9 Curso de POO en java - variables, constantes y objetos
9 Curso de POO en java - variables, constantes y objetos9 Curso de POO en java - variables, constantes y objetos
9 Curso de POO en java - variables, constantes y objetos
Clara Patricia Avella Ibañez
 
Tipos de variables que Java maneja
Tipos de variables que Java manejaTipos de variables que Java maneja
Tipos de variables que Java manejaLaura Robles
 
Copia de e.si.m.l.p
Copia de e.si.m.l.pCopia de e.si.m.l.p
Copia de e.si.m.l.pAyhli123
 

La actualidad más candente (19)

Guia1 pii
Guia1 piiGuia1 pii
Guia1 pii
 
Trabajo practico de lenguaje java.Conceptos. Estructuras. Programacion.
Trabajo practico de lenguaje java.Conceptos. Estructuras. Programacion.Trabajo practico de lenguaje java.Conceptos. Estructuras. Programacion.
Trabajo practico de lenguaje java.Conceptos. Estructuras. Programacion.
 
Aprendiendo un nuevo lenguaje
Aprendiendo un nuevo lenguajeAprendiendo un nuevo lenguaje
Aprendiendo un nuevo lenguaje
 
Diapositiva estructura de datos unidad 1
Diapositiva estructura de datos unidad 1Diapositiva estructura de datos unidad 1
Diapositiva estructura de datos unidad 1
 
Variables en java
Variables en javaVariables en java
Variables en java
 
Introducción a la Programaciónen Java
Introducción a la Programaciónen JavaIntroducción a la Programaciónen Java
Introducción a la Programaciónen Java
 
Programación Orientada Objetos Java Unidad 1
Programación Orientada Objetos Java Unidad 1Programación Orientada Objetos Java Unidad 1
Programación Orientada Objetos Java Unidad 1
 
Tipos de Variables en Java
Tipos de Variables en JavaTipos de Variables en Java
Tipos de Variables en Java
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Calse 3 JAVA 2012
Calse 3 JAVA 2012Calse 3 JAVA 2012
Calse 3 JAVA 2012
 
Encapsulamiento
EncapsulamientoEncapsulamiento
Encapsulamiento
 
Clase3 Programación Orientada a Objetos
Clase3 Programación Orientada a ObjetosClase3 Programación Orientada a Objetos
Clase3 Programación Orientada a Objetos
 
Elementos De Una Clase
Elementos De Una ClaseElementos De Una Clase
Elementos De Una Clase
 
Introduccion java
Introduccion javaIntroduccion java
Introduccion java
 
9 Curso de POO en java - variables, constantes y objetos
9 Curso de POO en java - variables, constantes y objetos9 Curso de POO en java - variables, constantes y objetos
9 Curso de POO en java - variables, constantes y objetos
 
Tipos de variables que Java maneja
Tipos de variables que Java manejaTipos de variables que Java maneja
Tipos de variables que Java maneja
 
Copia de e.si.m.l.p
Copia de e.si.m.l.pCopia de e.si.m.l.p
Copia de e.si.m.l.p
 
Realizarmanipulacion
RealizarmanipulacionRealizarmanipulacion
Realizarmanipulacion
 
Copia de e.si.m.l.p
Copia de e.si.m.l.pCopia de e.si.m.l.p
Copia de e.si.m.l.p
 

Similar a Manual de Java

Programacion java basica
Programacion java basicaProgramacion java basica
Programacion java basica
Juan Antonio Ramos
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Java
maeusogo
 
Java apesteguia
Java apesteguiaJava apesteguia
Java apesteguia
tonytenorio2
 
Introduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetosIntroduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetos
Fabian Dorado
 
Tipos de datos
Tipos de datosTipos de datos
Tipos de datos
omar_guerrero
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IE
Karen Olan
 
Java
JavaJava
ESTRUCTURA DE DATOS
ESTRUCTURA DE DATOSESTRUCTURA DE DATOS
ESTRUCTURA DE DATOS
Isai Vazquez
 
Tc2 301403 21
Tc2 301403 21Tc2 301403 21
Tc2 301403 21
Emerson Quintero
 
Unidad_01_01.pdf
Unidad_01_01.pdfUnidad_01_01.pdf
Unidad_01_01.pdf
FelipeFarfn2
 
FPJUCE - Capitulo2
FPJUCE - Capitulo2FPJUCE - Capitulo2
FPJUCE - Capitulo2
Ing. Giovanny Moncayo
 
DEFINICIÓN DE UNA CLASE: Los Metodos.pptx
DEFINICIÓN DE UNA CLASE:  Los Metodos.pptxDEFINICIÓN DE UNA CLASE:  Los Metodos.pptx
DEFINICIÓN DE UNA CLASE: Los Metodos.pptx
ANDRESFELIPESANDOVAL13
 
Introducción a la Algoritmia
Introducción a la AlgoritmiaIntroducción a la Algoritmia
Introducción a la Algoritmia
Jesús Bautista Bellido
 
Programaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetosProgramaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetos
Jonathan Macías
 
JAVA
JAVAJAVA
Realidad Aumentada (RA). Fundamentos de Java
Realidad Aumentada (RA). Fundamentos de JavaRealidad Aumentada (RA). Fundamentos de Java
Realidad Aumentada (RA). Fundamentos de JavaProyectos Urbe XXI, C.A
 
Unidad i poo
Unidad i pooUnidad i poo
Introducción a scala
Introducción a scalaIntroducción a scala
Introducción a scala
Paradigma Digital
 
Glosario de términos
Glosario de términosGlosario de términos
Glosario de términos
Misheell Meseguer
 

Similar a Manual de Java (20)

Programacion java basica
Programacion java basicaProgramacion java basica
Programacion java basica
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Java
 
Java apesteguia
Java apesteguiaJava apesteguia
Java apesteguia
 
Introduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetosIntroduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetos
 
Tipos de datos
Tipos de datosTipos de datos
Tipos de datos
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IE
 
Java
JavaJava
Java
 
ESTRUCTURA DE DATOS
ESTRUCTURA DE DATOSESTRUCTURA DE DATOS
ESTRUCTURA DE DATOS
 
Tc2 301403 21
Tc2 301403 21Tc2 301403 21
Tc2 301403 21
 
Unidad_01_01.pdf
Unidad_01_01.pdfUnidad_01_01.pdf
Unidad_01_01.pdf
 
FPJUCE - Capitulo2
FPJUCE - Capitulo2FPJUCE - Capitulo2
FPJUCE - Capitulo2
 
Fondo1 (2)
Fondo1 (2)Fondo1 (2)
Fondo1 (2)
 
DEFINICIÓN DE UNA CLASE: Los Metodos.pptx
DEFINICIÓN DE UNA CLASE:  Los Metodos.pptxDEFINICIÓN DE UNA CLASE:  Los Metodos.pptx
DEFINICIÓN DE UNA CLASE: Los Metodos.pptx
 
Introducción a la Algoritmia
Introducción a la AlgoritmiaIntroducción a la Algoritmia
Introducción a la Algoritmia
 
Programaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetosProgramaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetos
 
JAVA
JAVAJAVA
JAVA
 
Realidad Aumentada (RA). Fundamentos de Java
Realidad Aumentada (RA). Fundamentos de JavaRealidad Aumentada (RA). Fundamentos de Java
Realidad Aumentada (RA). Fundamentos de Java
 
Unidad i poo
Unidad i pooUnidad i poo
Unidad i poo
 
Introducción a scala
Introducción a scalaIntroducción a scala
Introducción a scala
 
Glosario de términos
Glosario de términosGlosario de términos
Glosario de términos
 

Más de Jesús Navarro

Estudio de factibilidad (Software)
Estudio de factibilidad (Software)Estudio de factibilidad (Software)
Estudio de factibilidad (Software)
Jesús Navarro
 
IEEE 730 1989: Plan de aseguramiento de la calidad del software
IEEE 730 1989: Plan de aseguramiento de la calidad del softwareIEEE 730 1989: Plan de aseguramiento de la calidad del software
IEEE 730 1989: Plan de aseguramiento de la calidad del software
Jesús Navarro
 
Key Escrow y Key Recovery
Key Escrow y Key RecoveryKey Escrow y Key Recovery
Key Escrow y Key Recovery
Jesús Navarro
 
¿Que es un ERP?
¿Que es un ERP?¿Que es un ERP?
¿Que es un ERP?
Jesús Navarro
 
Sistemas paralelos vs distribuidos
Sistemas paralelos vs distribuidosSistemas paralelos vs distribuidos
Sistemas paralelos vs distribuidos
Jesús Navarro
 
Pruebas de caja negra (Blackbox)
Pruebas de caja negra (Blackbox)Pruebas de caja negra (Blackbox)
Pruebas de caja negra (Blackbox)
Jesús Navarro
 
IEEE 829 2008:Software and System Test Documentation
IEEE 829 2008:Software and System Test DocumentationIEEE 829 2008:Software and System Test Documentation
IEEE 829 2008:Software and System Test Documentation
Jesús Navarro
 
IEEE 1016 1998: Software design description
IEEE 1016 1998: Software design descriptionIEEE 1016 1998: Software design description
IEEE 1016 1998: Software design description
Jesús Navarro
 
IEEE 830 1998: Software Requirements Specification (Especificación de requisi...
IEEE 830 1998: Software Requirements Specification (Especificación de requisi...IEEE 830 1998: Software Requirements Specification (Especificación de requisi...
IEEE 830 1998: Software Requirements Specification (Especificación de requisi...
Jesús Navarro
 
Casos de prueba de caja blanca (WhiteBox)
Casos de prueba de caja blanca (WhiteBox)Casos de prueba de caja blanca (WhiteBox)
Casos de prueba de caja blanca (WhiteBox)
Jesús Navarro
 
IEEE 1471-2000: Documento de arquitectura de software
IEEE 1471-2000: Documento de arquitectura de softwareIEEE 1471-2000: Documento de arquitectura de software
IEEE 1471-2000: Documento de arquitectura de software
Jesús Navarro
 
Análisis horizontal y vertical
Análisis horizontal y verticalAnálisis horizontal y vertical
Análisis horizontal y vertical
Jesús Navarro
 
Guía de instalación de WordPress en CentOS 7
Guía de instalación de WordPress en CentOS 7Guía de instalación de WordPress en CentOS 7
Guía de instalación de WordPress en CentOS 7
Jesús Navarro
 
Computación básica I
Computación básica IComputación básica I
Computación básica I
Jesús Navarro
 
Redes de área local
Redes de área localRedes de área local
Redes de área local
Jesús Navarro
 
Ley del impuesto al valor agregado IVA
Ley del impuesto al valor agregado IVALey del impuesto al valor agregado IVA
Ley del impuesto al valor agregado IVA
Jesús Navarro
 
Estructuras de control c++
Estructuras de control c++Estructuras de control c++
Estructuras de control c++
Jesús Navarro
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
Jesús Navarro
 
Distribuciones (Estadística)
Distribuciones (Estadística) Distribuciones (Estadística)
Distribuciones (Estadística)
Jesús Navarro
 
Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacion
Jesús Navarro
 

Más de Jesús Navarro (20)

Estudio de factibilidad (Software)
Estudio de factibilidad (Software)Estudio de factibilidad (Software)
Estudio de factibilidad (Software)
 
IEEE 730 1989: Plan de aseguramiento de la calidad del software
IEEE 730 1989: Plan de aseguramiento de la calidad del softwareIEEE 730 1989: Plan de aseguramiento de la calidad del software
IEEE 730 1989: Plan de aseguramiento de la calidad del software
 
Key Escrow y Key Recovery
Key Escrow y Key RecoveryKey Escrow y Key Recovery
Key Escrow y Key Recovery
 
¿Que es un ERP?
¿Que es un ERP?¿Que es un ERP?
¿Que es un ERP?
 
Sistemas paralelos vs distribuidos
Sistemas paralelos vs distribuidosSistemas paralelos vs distribuidos
Sistemas paralelos vs distribuidos
 
Pruebas de caja negra (Blackbox)
Pruebas de caja negra (Blackbox)Pruebas de caja negra (Blackbox)
Pruebas de caja negra (Blackbox)
 
IEEE 829 2008:Software and System Test Documentation
IEEE 829 2008:Software and System Test DocumentationIEEE 829 2008:Software and System Test Documentation
IEEE 829 2008:Software and System Test Documentation
 
IEEE 1016 1998: Software design description
IEEE 1016 1998: Software design descriptionIEEE 1016 1998: Software design description
IEEE 1016 1998: Software design description
 
IEEE 830 1998: Software Requirements Specification (Especificación de requisi...
IEEE 830 1998: Software Requirements Specification (Especificación de requisi...IEEE 830 1998: Software Requirements Specification (Especificación de requisi...
IEEE 830 1998: Software Requirements Specification (Especificación de requisi...
 
Casos de prueba de caja blanca (WhiteBox)
Casos de prueba de caja blanca (WhiteBox)Casos de prueba de caja blanca (WhiteBox)
Casos de prueba de caja blanca (WhiteBox)
 
IEEE 1471-2000: Documento de arquitectura de software
IEEE 1471-2000: Documento de arquitectura de softwareIEEE 1471-2000: Documento de arquitectura de software
IEEE 1471-2000: Documento de arquitectura de software
 
Análisis horizontal y vertical
Análisis horizontal y verticalAnálisis horizontal y vertical
Análisis horizontal y vertical
 
Guía de instalación de WordPress en CentOS 7
Guía de instalación de WordPress en CentOS 7Guía de instalación de WordPress en CentOS 7
Guía de instalación de WordPress en CentOS 7
 
Computación básica I
Computación básica IComputación básica I
Computación básica I
 
Redes de área local
Redes de área localRedes de área local
Redes de área local
 
Ley del impuesto al valor agregado IVA
Ley del impuesto al valor agregado IVALey del impuesto al valor agregado IVA
Ley del impuesto al valor agregado IVA
 
Estructuras de control c++
Estructuras de control c++Estructuras de control c++
Estructuras de control c++
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Distribuciones (Estadística)
Distribuciones (Estadística) Distribuciones (Estadística)
Distribuciones (Estadística)
 
Lenguajes de programacion
Lenguajes de programacionLenguajes de programacion
Lenguajes de programacion
 

Último

Caso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La SalleCaso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La Salle
Ecaresoft Inc.
 
Escaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipoEscaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipo
nicromante2000
 
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdfIntroducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
AbbieDominguezGirond
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
SamuelGampley
 
PitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitalesPitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitales
juanorejuela499
 
Maquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdfMaquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdf
juanjosebarreiro704
 

Último (6)

Caso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La SalleCaso de exito Cirrus - Hospital La Salle
Caso de exito Cirrus - Hospital La Salle
 
Escaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipoEscaneo y eliminación de malware en el equipo
Escaneo y eliminación de malware en el equipo
 
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdfIntroducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
 
PitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitalesPitchCollabART uniendo talentos, creando maravillas digitales
PitchCollabART uniendo talentos, creando maravillas digitales
 
Maquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdfMaquina de Dibujo y Escritura Automática.pdf
Maquina de Dibujo y Escritura Automática.pdf
 

Manual de Java

  • 1. Jesús Navarro | Programación orientada a objetos | 01 de noviembre de 2015 Manual interno de Java JAVA SE 8
  • 2. P á g i n a | 1 Manual interno de Java | JAVA SE 8 Java Java es un lenguaje de programación orientado a objetos que se popularizó a partir del lanzamiento de su primera versión comercial de amplia difusión, la JDK 1.0 en 1996. Actualmente es uno de los lenguajes más usados para la programación en todo el mundo. Este manual está basado en Java SE (Standard Edition) en su versión 8 cuya fecha de lanzamiento fue en marzo del 2014. Para mayo del 2015 Java se ejecuta en más de 7 billones de dispositivos y tiene una comunidad de más de 9 millones de desarrolladores a nivel mundial. Palabras reservadas Las palabras reservadas son identificadores predefinidos que tienen un significado para el compilador y por tanto no pueden usarse como identificadores creados por el usuario en los programas. abstract continue for new switch assert default goto package synchronized boolean do if private this break double implements protected throw byte else import public throws case enum instanceof return transient catch extends int short try char final interface static void class finally long strictfp volatile const float native super while
  • 3. P á g i n a | 2 Manual interno de Java | JAVA SE 8 Tipo de datos Tipos de datos primitivos Tipo de dato Representación Tamaño (Bytes) Rango de valores Valor por defecto Clase asociada byte Numérico Entero con signo 1 -128 a 127 0 Byte short Numérico Entero con signo 2 -32768 a 32767 0 Short int Numérico Entero con signo 4 -2147483648 a 2147483647 0 Integer long Numérico Entero con signo 8 -9223372036854775808 a 9223372036854775807 0 Long float Numérico en Coma flotante de precisión simple Norma IEEE 754 4 ± 3.4x10-38 a ± 3.4x1038 0.0 Float double Numérico en Coma flotante de precisión simple Norma IEEE 754 8 ± 1.8x10-308 a ± 1.8x10308 0.0 Double char Carácter Unicode 2 u0000 a uFFFF u0000 Character boolean Dato lógico - True o False false Boolean void - - - - Void
  • 4. P á g i n a | 3 Manual interno de Java | JAVA SE 8 Operadores aritméticos Nombre Símbolo Asignación Ejemplo Suma “+” “+=” “x+y” Resta “-” “-=” “x-y” Multiplicación “*” “*=” “x*y” División “/” “/=” “x/y” Modulo “%” “%=” “x%y” Incremento “x++” n/d “x++” Decremento “x--” n/d “x—“ Operadores relacionales y lógicos Nombre Símbolo Ejemplo Asignación “ = ” “ x=5 ” Comparación “ == ” “ x==y ” Diferente “ != ” “ x!=y ” Menor que “ < ” “ x<y ” Menor o igual que “ <= ” “ x<=y ” Mayor que “ > “ “ x>y ” Mayor o igual que “ >= ” “ x=>y ” NOT “ ! ” “ !x ” AND “ && ” “ x&&y ” OR “ || ” “ x||y ” XOR “ ^ ” “ x^y ”
  • 5. P á g i n a | 4 Manual interno de Java | JAVA SE 8 Documentación Cada programa que se realice deberá contar con la información necesaria para saber quién lo hizo, versión y fecha, así como el debido uso de los comentarios necesarios para el mantenimiento del código. Cada programa contara con la siguiente información: Programa: Hacer referencia al nombre del programa Utilidad: Para qué sirve el programa Programador: Siempre puede haber más de uno Fecha: La fecha en que se realiza la última modificación a la versión correspondiente Versión: Modificaciones mayores hacen que cambie el primer digito, menos solo el decimal Changelog: Lista de cambios entre versiones del programa
  • 6. P á g i n a | 5 Manual interno de Java | JAVA SE 8 Variables y Constantes Una variable es una zona de memoria donde se almacena un valor dado, asignándole un nombre para su posterior referencia. Una constante es una variable a la que no se lepuede modificar el valor después de su declaración. Para declarar una constante en Java se utiliza la palabra final delante de la declaración de la variable. Modificadores de acceso Se utilizan para definir el nivel de ocultación o visibilidad de los atributos, funciones y métodos, así como el de la misma clase. Ordenados de menor a mayor visibilidad los modificadores de acceso son los siguientes: Modificador de acceso Efecto Aplicable en private Solo puede ser usado en el interior de su propia clase Atributos Métodos Sin modificador Solo puede ser usado por las clases dentro de su mismo paquete Clases Atributos Métodos protected El elemento puede ser utilizado por cualquier clase dentro de su paquete y por cualquier subclase Atributos Métodos public El elemento es visible desde cualquier clase Clases Atributos Métodos
  • 7. P á g i n a | 6 Manual interno de Java | JAVA SE 8 Programación estructurada La programación estructurada es un paradigma de programación orientado a mejorar la claridad, calidad y tiempo de desarrollo de un programa de computadora, utilizando únicamente subrutinas y tres estructuras: secuencia, selección (if y switch) e iteración (bucles for y while), considerando innecesario y contraproducente el uso de la instrucción de transferencia incondicional (GOTO), que podría conducir a "código espagueti", que es mucho más difícil de seguir y de mantener, y era la causa de muchos errores de programación. SENTENCIA IF En programación, una sentencia condicional es una instrucción o grupo de instrucciones que se pueden ejecutar o no en función del valor de una condición. (Ejemplo 1). Código
  • 8. P á g i n a | 7 Manual interno de Java | JAVA SE 8 SWITCH La instrucción switch es una forma de expresión de un anidamiento múltiple de instrucciones if ... else. Su uso no puede considerarse, por tanto, estrictamente necesario, puesto que siempre podrá ser sustituida por el uso de if. No obstante, a veces nos resultará útil al introducir mayor claridad en el código. (Ejemplo 2). Código
  • 9. P á g i n a | 8 Manual interno de Java | JAVA SE 8 BUCLE FOR El bucle for se utiliza para repetir una o más instrucciones un determinado número de veces. De entre todos los bucles, el for se suele utilizar cuando sabemos seguro el número de veces que queremos que se ejecute. (Ejemplo 3). BUCLE WHILE El Bucle while o bucle mientras es una estructura cuyo propósito es repetir un bloque de código mientras una condición se mantenga verdadera. (Ejemplo 4). BUCLE DO WHILE La sentencia de iteración do-while es de tipo pos prueba. Primero realiza las acciones luego pregunta. (Ejemplo 5).
  • 10. P á g i n a | 9 Manual interno de Java | JAVA SE 8 Arreglos Un array (arreglo) en Java es una estructura de datos que nos permite almacenar un conjunto de datos de un mismo tipo. El tamaño de los arrays se declara en un primer momento y no puede cambiar luego durante la ejecución del programa, como sí puede hacerse en otros lenguajes. Los arrays se numeran desde el elemento cero, que sería el primer elemento, hasta el n-1 que sería el último elemento. Es decir, si tenemos un array de 5 elementos, el primer elemento sería el cero y el último elemento sería el 4. Aclarar que los valores por defecto son los siguientes: a) Para números el valor cero “0” b) Para cadenas y letras el valor vacío c) Para booleanos el valor false Array unidimensional (Ejemplo 6): ARRAY MULTIDIMENSIONAL En Java es posible crear arrays con más de una dimensión, pasando de la idea de lista, vector o matriz de una sola fila a la idea de matriz de “m x n” elementos, estructuras tridimensionales, tetra dimensionales, etc. Gráficamente podría ser descrito así: int array1 [][] = new int [2][3]; [0][0] [0][1] [0][2] [1][0] [1][1] [1][2] Hay que recordar que los elementos empiezan a numerarse por 0. Así, la esquina superior izquierda de la matriz será el elemento [0][0] y la esquina inferior derecha será el [1][2]. Array multidimensional (Ejemplo 7);
  • 11. P á g i n a | 10 Manual interno de Java | JAVA SE 8 Funciones Una función es un fragmento de código que es llamado por su nombre. Se pueden pasar los datos a operar en (parámetros) y, opcionalmente, puede devolver datos (el valor de retorno). Función void (No regresa datos) Función return (Regresa datos) Llamada a una función (Ejemplo 8)
  • 12. P á g i n a | 11 Manual interno de Java | JAVA SE 8 Programación orientada a objetos La programación Orientada a objetos (POO) es un paradigma de programación más cercano a como expresaríamos las cosas en la vida real. Con la POO tenemos que aprender a pensar las cosas de una manera distinta, para escribir nuestros programas en términos de objetos, propiedades, métodos y otras cosas que veremos rápidamente para aclarar conceptos y dar una pequeña base que permita entender un poco con este tipo de programación. A continuación, se resumen los conceptos básicos de POO. Objeto: Entidad existente en la memoria del ordenador que tiene unas propiedades (atributos o datos sobre sí mismo almacenados por el objeto) y unas operaciones disponibles específicas (métodos). Clase: Representa al conjunto de objetos que comparten una estructura y un comportamiento comunes. Se puede considerar como una plantilla: Define los atributos que componen ese tipo de objetos y los métodos que pueden emplearse para trabajar con esos objetos. Las clases siguen una jerarquía: Superclase, Clase y Subclase. Abstracción: Podríamos definir la abstracción como la "acción de aislar mentalmente o considerar por separado las cualidades de un objeto, considerar un objeto en su esencia". ¿Qué quiere decir esta definición? A través de la abstracción conseguimos extraer las cualidades principales sin detenernos en los detalles. Encapsulamiento: Se denomina así al ocultamiento del estado, es decir, de los datos miembro de 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 a ellos, eliminando efectos secundarios e interacciones. De esta forma el usuario de la clase puede obviar la implementación de 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. Herencia: Consideraremos la herencia como la transmisión de los métodos y atributos de una clase a otra. Gracias a la herencia se pueden establecer jerarquías entre clases. Establecer una jerarquía es un proceso subjetivo, que depende del programador y de los matices de apreciación de cada uno. Polimorfismo: Esta característica permite definir distintos comportamientos para un método dependiendo de la clase sobre la que se realice la implementación. En todo momento tenemos un único medio de acceso, sin embargo, se podrá acceder a métodos distintos.
  • 13. P á g i n a | 12 Manual interno de Java | JAVA SE 8 Métodos Un método es una función que es propiedad de un objeto (en algunos orientado a objetos de sistemas, es más correcto decir que es de titularidad de una clase). Ser "propiedad" de un objeto/clase significa que se refiere al método a través del objeto/clase; por ejemplo, en Java si desea invocar el método "SumaNumeros()" propiedad de la clase "Ejercicio8" entonces se puede crear una instancia llamada “Operación” y se escribe "Operación.SumaNumeros()". Para mandar llamar un método necesitamos instanciar la clase donde se encuentra y después mandamos llamar el método. Instancia de un objeto (Ejercicio 9) SOBRECARGA DE METODOS (OVERLOADING) Un método sobrecargado (Ejemplo 10) se utiliza para reutilizar el nombre de un método, pero con diferentes argumentos. Las reglas para sobrecargar un método son las siguientes: -Los métodos sobrecargados deben de cambiar la lista de argumentos -Se puede cambiar el tipo de retorno -Se puede cambiar el modificador de acceso -Se pueden crear nuevas o extender las excepciones -Un método puede ser sobrecargado en la misma clase o en una subclase La forma en que se manda llamar un método sobrecargado es como cualquier otro método, para diferenciar entre el método original y el sobrecargado es dependiendo del tipo de argumento que se envié, es decir, si tenemos dos métodos, uno que acepta de parámetro un float y el otro un int, dependiendo del tipo de parámetro que le pasemos será el método que se ejecuta. SOBRESCRITURA DE METODOS (OVERRIDING) La sobrescritura es la forma por la cual una clase que hereda puede re-definir los métodos de su clase Padre, de esta manera puede crear nuevos métodos con el mismo nombre de su superclase. Es decir, si se tiene un método en la clase padre llamado revisar() se puede crear en la clase hija un método también llamado revisar() pero implementando lo que se necesite. Existen reglas para sobre-escribir métodos que son las siguientes: -A diferencia de los métodos sobrecargados los argumentos en los métodos sobrescritos no deben de cambiar -En un método sobrescrito no se puede cambiar el tipo de retorno, excepto por los subtipos del tipo declarado originalmente
  • 14. P á g i n a | 13 Manual interno de Java | JAVA SE 8 -Las excepciones en estos métodos pueden reducirse o eliminarse, pero no se pueden crear nuevas o ampliar las ya establecidas -Los modificadores de acceso no pueden hacerse más, pero si pueden ser menos restrictivos -En los métodos sobrecargados los argumentos son los que determinan que método es el que se invocara sin embargo en los métodos sobrescritos el tipo de objeto determina que método es el elegido Librería Math En cuanto a las funciones matemáticas en Java, las funciones disponibles vienen definidas en la clase Math. Hay muchas funciones disponibles. Se puede consultar la lista completa en la documentación oficial del API de Java (según versión de Java en uso, por ejemplo, para la versión 8 ver http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html). Funciones de mayor importancia en la librería Math Función Matemática Significado Ejemplo Resultado abs Valor absoluto int x = Math.abs(2.3); x=2; atan Arco Tangente double x = Math.atan(1); x= 0.7853981633; sin Seno double x = Math.sin(0.5); x= 0.479425538; cos Coseno double x = Math.cos(0.5); x = 0.87758256189037; tan Tangente double x = Math..tan(0.5); x = 0.54630248984379; exp Exponenciación double x = Math.exp(1); x= 2.71828182845904; log Logaritmo double x= Math.log(2.7172); x= 0.99960193833500; pow Potencia double x = Math.pow(2.3); x = 8.0; round Redondeo double x = Math.round(2.5); x = 3; random Numero aleatorio double x = Math.random(); x= 0.20614522323378;
  • 15. P á g i n a | 14 Manual interno de Java | JAVA SE 8 Observaciones: - Las funciones matemáticas, al pertenecer a la clase Math, se invocan siempre de la siguiente manera: Math.funcion(argumentos) - Las funciones relacionadas con ángulos (atan, cos, sin, tan) trabajan en radianes. Por tanto, para operar con grados, tendremos que realizar la conversión oportuna - La función random, permite generar números aleatorios en el rango ]0,1[. Por tanto, el 0 y el 1 están excluidos - La función exponenciación neperiana o exponenciación de e, matemáticamente significa ex, que en Java sería Math.exp(x), donde x es un número real y la base es la constante neperiana e= 2.7172... - La función logaritmo neperiano, matemáticamente significa Ln x, que en Java correspondería a la expresión Math.log(x).
  • 16. P á g i n a | 15 Manual interno de Java | JAVA SE 8 Ejemplos EJEMPLO 1
  • 17. P á g i n a | 16 Manual interno de Java | JAVA SE 8 EJEMPLO 2
  • 18. P á g i n a | 17 Manual interno de Java | JAVA SE 8 EJEMPLO 3 EJEMPLO 4
  • 19. P á g i n a | 18 Manual interno de Java | JAVA SE 8 EJERCICIO 5 EJERCICIO 6
  • 20. P á g i n a | 19 Manual interno de Java | JAVA SE 8 EJERCICIO 7
  • 21. P á g i n a | 20 Manual interno de Java | JAVA SE 8 EJERCICIO 8 EJERCICIO 9
  • 22. P á g i n a | 21 Manual interno de Java | JAVA SE 8 EJERCICIO 10 EJERCICIO 11