Vous êtes sur la page 1sur 16

05/11/13

INTRODUCIÓN A JAVA
Profesor: Juan Mateu

Juan Mateu Progresa Centro Integrado de Formación 2

Programas y lenguajes de programación


•  Un programa es una serie de órdenes o instrucciones con una
finalidad concreta que realizan un función determinada.

•  En este curso, aprenderemos un lenguaje de programación para


escribir programas de manera entendible por los humanos que luego
traduciremos al lenguaje máquina entendible por los ordenadores
mediante otros programas llamados intérpretes o compiladores.

•  El programador escribirá el código fuente que luego lo compila a


código máquina.

•  El código fuente está escrito en un lenguaje de programación y el


compilador es un programa que se encarga de transformar el código
fuente en código máquina.

1  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 3

Programas y lenguajes de programación


•  Los compiladores son programas específicos para un
lenguaje de programación, los cuales transforman el
programa fuente en un programa directa o indirectamente
ejecutable por la máquina destino. No es posible compilar un
programa escrito en lenguaje Java con un compilador de C
porque éste no lo entendería.

•  El lenguaje máquina que genera Java es un lenguaje


intermedio interpretable por una máquina virtual instalada en
el ordenador donde se va a ejecutar.

•  Una máquina virtual es una máquina ficticia que traduce las


instrucciones máquina ficticias en instrucciones para la
máquina real.

Juan Mateu Progresa Centro Integrado de Formación 4

El lenguaje Java
•  Java es uno de los lenguajes más utilizados en la
actualidad.
•  Java es un lenguaje de propósito general y su éxito radica
en que es el lenguaje de Internet. Applets, servlets, páginas
JSP o JavaScript utilizan Java como lenguaje de
programación.
•  El éxito de Java radica en que es un lenguaje
multiplataforma.
•  Java utiliza una máquina virtual en el sistema destino y por lo
tanto no hace falta recompilar de nuevo las aplicaciones para
cada sistema operativo. Java, por lo tanto, es un lenguaje
interpretado que para mayor eficiencia utiliza un código
intermedio (bytecode). Este código intermedio o bytecode es
independiente de la arquitectura y por lo tanto puede ser
ejecutado en cualquier sistema.

2  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 5

Compilación en otros lenguajes


Programa (C, C++,…)

Compilación Compilación Compilación

Ejecutable para Linux Ejecutable para Windows Ejecutable para Mac OS

S.O. Linux S.O. Windows S.O. Mac Os

Juan Mateu Progresa Centro Integrado de Formación 6

Compilación en Java
Programa Java (holamundo.java)

Compilación

Bytecode
(holamundo.class)

S.O. Linux S.O. Windows S.O. Mac Os

3  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 7

Lenguaje Java
•  James Gosling trabajaba para Sun Microsystems y fue el
diseñador de Java en 1990. El primer nombre que tuvo Java
fue OAK y tuvo como referentes C y C++.
•  SUN Microsystems desarrolló este lenguaje con la idea de
que fuese utilizado en microelectrónica y sistemas
embebidos.
•  Razones para aprender Java:
•  Por el futuro y el presente que tiene
•  Es un lenguaje sencillo
•  Es un lenguaje orientado a objetos
•  Es independiente de la plataforma.

Juan Mateu Progresa Centro Integrado de Formación 8

Java Development Kit (JDK)


•  El JDK aunque no contiene ninguna herramienta gráfica
para el desarrollo de programas, sí que contiene
aplicaciones de consola y herramientas de compilación,
documentación y depuración. El JDK incluye el JRE (Java
Runtime Environment) que consta de los mínimos
componentes necesarios para ejecutar una aplicación Java,
como son la máquina virtual y las librerías de clases.
•  El JDK contiene, entre otras, las siguientes herramientas de
consola:
•  Java. Es la máquina virtual
•  Javac: es el compilador de Java.
•  Javap: es el desensamblador de clases
•  jdb: es del depurador de Java
•  Javadoc: Es el generador de documentación
•  Appletviewer: Visor de Applets.

4  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 9

Los programas en Java


•  Los programas o aplicaciones en Java se componen de una
serie de ficheros .class que son ficheros en bytecode que
contienen las clases del programa.

•  Estos ficheros no tienen por qué estar situados en un


directorio concreto, sino que pueden estar distribuidos en
varios discos o incluso en varias máquinas.

•  La aplicación se ejecuta desde el método principal o


main() situada en una clase. A partir de ahí se van creando
objetos a partir de las clases y se va ejecutando la
aplicación.

Juan Mateu Progresa Centro Integrado de Formación 10

Estructuras y bloques de un programa


•  En Java generalmente cada clase es un fichero distinto.
•  Si existieran varias clases en el fichero, la clase cuyo nombre
coincide con el nombre del fichero debería llevar el modificar
public y es la que se puede utilizar fuera del fichero.
•  Las clases tienen el mismo nombre que su fichero .java y es
importante que coincidan las mayúsculas y minúsculas.

5  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 11

Estructuras y bloques de un programa


•  El código Java en las clases se agrupa en métodos o
funciones. Cuando Java va a ejecutar el código de una clase,
lo primero que hace es buscar el método main de dicha
clase para ejecutarlo.

Juan Mateu Progresa Centro Integrado de Formación 12

El método main
El método main tiene las siguientes particularidades:

•  Es público (public). Esto es así para llamarlo desde


cualquier lado.

•  Es estático (static). Al ser static se le puede llamar


sin tener que instanciar la clase.

•  No devuelve ningún valor(modificador void)

•  Admite una serie de parámetros (String [ ] args)

6  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 13

Entornos Integrados de Desarrollo (IDE)


•  Un IDE o entorno integrado de desarrollo es una herramienta
con el cual poder desarrollar y probar proyectos en un
lenguaje determinado.
•  La escritura de código resulta muy sencillo con un IDE. Éstos
suelen contar con un editor de código que resalta las
palabras reservadas del lenguaje para distinguirlas del resto
del código, algunos incluso permiten la autoescritura de
instrucciones utilizando la técnica Intellisense, que consiste
en mostrar la lista completa de métodos de un objeto según
se escribe la referencia.
•  Para desarrollar y ejecutar programas con Java necesitamos
tener instalado el JDK o Java Development Kit. También se
denomina SDK (Standard Development Kit) o incluso J2SE
(Java 2 platform Standard Edition).

Juan Mateu Progresa Centro Integrado de Formación 14

Entornos Integrados de Desarrollo (IDE)


•  Existen numerosos IDE para desarrollar aplicaciones con
Java.
•  Algunos de dichos IDE para Java son:

Entorno de desarrollo Fabricante Web


Netbeans Sun Microsystem https://netbeans.org/
Jbuilder Embarcadero http://
(inicialmente desarrollado www.embarcadero.com/
por Borland) products/jbuilder
Jdeveloper Oracle http://www.oracle.com/
technetwork/developer-
tools/jdev/overview/
index.html
Eclipse Eclipse Foundation http://www.eclipse.org/
BlueJ University of Kent y otras http://www.bluej.org/
entidades educativas.

7  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 15

Tipos de datos simples en Java


Tipo de datos Información Rango Descripción
representada
byte Datos enteros -128-> +127 Se utilizan 8 bits
short Datos enteros -32768 -> + 32767 Dato de 16 bits
int Datos enteros -2147483648 -> Dato de 32 bits de
+2147483647 longitud
long Datos enteros -9223372036854775808 - Dato de 64 bits de
>+ longitud
9223372036854775807

char Datos enteros y 0 -> 65535 Representación


caracteres números en Unicode y
ASCII
float Datos en coma flotante Precisión aprox. 7 dígitos 32 bits en formato
de 32 bits IEEE 754
double Datos en coma flotante Precisión aprox. 16 dígitos 64 bits en formato
de 64 bits IEEE 754
boolean Valores booleanos True/false Evaluación de
expresiones booleanas

Juan Mateu Progresa Centro Integrado de Formación 16

Tipos de datos simples en Java


Tipo de dato Código
byte byte a;
short short b, c=3;
int int d=-30;
Int e=0xC125

long long b=434123;


long b=5L;
char char car1=‘c’;
char car2=99; //el 99 es la c también
float Float pi=3.1416;
Float pi=3.1416F;
double Double millon=1e6; //1x106
Boolean Boolean esprimo=true

8  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 17

Constantes en Java
•  Las constantes (representadas en mayúsculas) se utilizan en
datos que nunca varían (IVA, PI, número E…). Utilizando
constantes y no variables nos aseguramos que su valor no
va a poder ser modificado nunca. También utilizar constantes
permite centralizar el valor de un dato en una sola línea de
código (si queremos cambiar el valor del IVA sólo se
cambiará una única vez).

•  Las constantes se declaran con el siguiente formato:


final [static] <tipo de datos> <NOMBRE CONSTANTE> =
<valor>;

•  Por ejemplo:
•  final static double PI=3.141592;

Juan Mateu Progresa Centro Integrado de Formación 18

Literales
•  Un literal puede ser una expresión:
•  De tipo de datos simple
•  El valor null
•  Un string o cadena de caracteres, por ejemplo
“hola mundo”

•  Ejemplos de literales en Java:


•  ‘a’,322, -6, 3.1416, “pi”, “programación
estructurada”, ‘h’, 12457….

9  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 19

Variables en Java
•  Una variable no es más ni menos que una zona de
memoria donde se puede almacenar información del
tipo que desee el programador.

Juan Mateu Progresa Centro Integrado de Formación 20

Variables en Java
•  Las variables declaradas en el bloque de la clase como n2 se
consideran miembros de la clase, mientras que las variables
n2 y suma pertenecen al método main y solo pueden ser
utilizadas por el mismo. Las variables declaradas en el
bloque de código de un método son variables que se crean
cuando el bloque se declara, y se destruyen cuando finaliza
la ejecución de dicho bloque.

•  Las variables miembro de una clase se inicializan por defecto


(las numéricas con 0, los caracteres con ‘\0’, las referencias a
objetos y cadenas con null) mientras que las variables
locales no se inicializan por defecto.

•  Una variable local, no puede ser declarada como static.

10  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 21

Visibilidad y vida de las variables


•  Visibilidad, scope o ámbito de una variable son sinónimos.
Visibilidad es la parte del código de una aplicación donde la
variable es accesible y puede ser utilizada.

•  Las variables en Java no pueden declararse fuera de una


clase.

•  Por regla general, en Java, todas las variables que están


dentro de un bloque (entre { y } ) son visibles y existen dentro
de dicho bloque.

•  Las funciones miembro de una clase, podrán acceder a todas


las variables miembro de dicha clase pero no a las variables
locales de otra función miembro.

Juan Mateu Progresa Centro Integrado de Formación 22

Visibilidad y vida de las variables


•  Como vemos en el siguiente ejemplo, debido a que la
variable a y la variable b están en un bloque, y la variable c
que se encuentra fuera de dicho bloque intenta coger el valor
de a y de b, pero no puede debido a que no tiene la
visibilidad por estar fuera de su bloque, por tanto, el siguiente
código daría error.

11  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 23

Operadores y expresiones
•  Operadores aritméticos
•  Los utilizaremos para realizar operaciones matemáticas.

Operador Uso Operación


+ A+B Suma
- A-B Resta
* A*B Multiplicación
/ A/B División
% A%B Módulo o resto de una
división entera

int n1=2,n2;
n2 =n1 * n1; //n2=4
n2= n2 – n1; // n2=2
n2=n2 + n1 + 15; //n2=19
n2=n2/n1; //n2=9
n2=n2%n1; //n2=1

Juan Mateu Progresa Centro Integrado de Formación 24

Operadores y expresiones
•  Operadores relacionales
•  Con los operadores relacionales se puede evaluar la
igualdad y la magnitud.

Operador Uso Operación


< A<B A menor que B
> A>B A mayor que B
<= A <= B A menor o igual que B
>= A >= B A mayor o igual que B
!= A != B A distinto que B

== A == B A igual que B

12  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 25

Operadores y expresiones
•  Operadores lógicos
•  Con los operadores lógicos se pueden realizar
operaciones lógicas.
Operador Uso Operación
&& A && B A AND B. El resultado será true si ambos
operandos son true. Serán false en caso
contrario.
|| A || B A OR B. El resultado será false si ambos
operandos son false, en caso contrario
será true.
! !A Not A. Si el operando es true será false.
Si el operando es false pasará a ser true
^ A^B A XOR B. El resultado será true si un
operando es true y el otro false, y false
en caso contrario.

Juan Mateu Progresa Centro Integrado de Formación 26

Operadores y expresiones
•  Operadores unitarios o unarios

Operador Uso Operación


- -A Cambio de signo del operando
-- A-- Decremento de A
++ A++ Incremento de A
! !A Not A.

Resultado:
4
9
10
3

13  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 27

Operadores de asignación
Operador Uso Operación
= A=B Asignación
*= A *= B Multiplicación y
asignación. La operación
equivale A=A*B
/= A /= B División y asignación.
Equivale a A=A/B
%= A %= B Módulo y asignación.
Equivale A=A%B
+= A += B Suma y asignación.
Equivale A=A + B
-= A -= B Resta y asignación.
Equivale a A=A - B

Juan Mateu Progresa Centro Integrado de Formación 28

Precedencia de los operadores


•  Se aconseja utilizar paréntesis para dejar los programas más
legibles y controlar las operaciones sin tener que depender
de la precedencia.
() [] .
Más prioridad -- ! ++ --
New (tipo) expresión
* / %
+ -
<< >> >>>
< <= > >= instanceof
== !=
&
|
&&
||
Menos prioridad ?:
= *= /= += -= <<= >>= >>>= &= |=

14  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 29

Conversiones de tipos (cast)


•  Existen dos tipos de conversiones, las conversiones explícitas
e implícitas. Se aconseja evitar en la medida de lo posible el
uso de conversiones de tipo.

•  Conversiones implícitas: Se realiza de forma automática


entre dos tipos de datos diferentes. Requiere que la variable
destino (la colocada a la izquierda) tenga más precisión que la
variable origen (situada a la derecha).

•  Conversiones explícitas: En este caso es el programador el


que fuerza la conversión mediante una operación llamada cast
o casting. El formato es: (tipo) expresión. En conversiones
explícitas en algunos casos se puede perder información.

Juan Mateu Progresa Centro Integrado de Formación 30

Conversiones de tipos (cast)


•  Conversión implícita:
•  byte dato1=3; short dato2=5;
•  dato2=dato1;

•  Conversión explícita:
•  int idato=5;
•  byte bdato;
•  bdato=(byte)idato;
•  System.out.println(bdato); //mostrará un 5 por
pantalla

15  
05/11/13  

Juan Mateu Progresa Centro Integrado de Formación 31

Ejemplo programa en Java


•  Realiza un programa en Java que dada dos variables a y
b, intercambie los valores de a y b.

16  

Vous aimerez peut-être aussi