Elementos básicos. Fuertemente tipeado. Sintaxis similar a C/C++. Sin punteros: garbage...

24
INTRODUCCIÓN AL LENGUAJE JAVA Elementos básicos

Transcript of Elementos básicos. Fuertemente tipeado. Sintaxis similar a C/C++. Sin punteros: garbage...

Page 1: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

INTRODUCCIÓN AL LENGUAJE JAVA

Elementos básicos

Page 2: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

JAVA Fuertemente tipeado. Sintaxis similar a C/C++. Sin punteros: garbage collection. Portable. Integra librerías para objetos

distribuidos, hilos, interfaz de usuario. Lenguaje interpretado (considerado

híbrido).

Page 3: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

JAVA: MODELO DE EJECUCIÓN

Aplicaciones Java

API

JVM

Aplicaciones no Java

Sistema Operativo

Page 4: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

ENTORNO DE DESARROLLO

Editor Compilador

Cargador de clases

Verificador de Bytecodes

Fase 1: Edición(.java)

Fase 2: Compilación(.class)

Fase 3: Carga

Máquina Virtual de Java (JVM)

Memoria Principal

Fase 4: Verificación

Fase 5: Ejecución

Page 5: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

JAVA: ASPECTOS LÉXICOS Instrucciones separadas por “;” Comentarios:

// Hasta el final de la línea /* */ Más de una línea

Sensible a mayúsculas y minúsculas Maneja convenios de nomenclatura o

codificación.

Page 6: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

JAVA: CONVENCIONES DE CODIFICACIÓN Paquetes: se escriben en minúscula.

Ejemplo: package transporte.objetos. Clases: sustantivos escritos en

mayúscula y minúscula; con la primera letra de cada palabra en mayúscula. Ejemplo: LibroContabilidad.

Interfaces: igual que las Clases.

Page 7: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

JAVA: CONVENCIONES DE CODIFICACIÓN Métodos: verbos escritos en mayúscula

y minúscula con la inicial en minúscula. Dentro de cada nombre de método, las palabras se separan con letras mayúsculas. Ejemplo: cuadrarLibro()

Variables: igual que los métodos pero no se utilizan verbos sino sustantivos. Ejemplo: clienteActual

Page 8: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

EJEMPLO DE CÓDIGO

Page 9: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

JAVA: VARIABLES Y LITERALES Declaración, utlización, ámbito léxico,

etc; es similar al lenguaje C. En Java existen las variables “final” las

cuales son como las constantes puesto que no es posible modificar su valor. final double PI = 3.141592653589793;

Page 10: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

JAVA: TIPOS DE DATOS Son de dos tipos: primitivos y de clase Primitivos:

Lógicos: booleanTexto: charEnteros: byte, short, int y longReales: float y double

De Clase: String y todo tipo de dato que no sea

primitivo

Page 11: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

JAVA: OPERADORES Numéricos:

+, -, *, /, %, +=, -=, *=, /=, %=, --, ++ Lógicos:

, |, ^, !, , || Relacionales:

Cualquier tipo: == , !=Tipos Numéricos: > , >=, < , <=

Condicional: If then else: (condicion)? accion1: accion2:

Page 12: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

JAVA: CONDICIONALES

Page 13: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

JAVA: CICLOS

Page 14: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

LA CLASE JAVA.LANG.STRING String encapsula cadenas de caracteres

y su manipulación. String ≠ char[] Los caracteres de un String no se

pueden modificar. Constructores.

String(char[])String(String)

Page 15: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

LA CLASE JAVA.LANG.STRING Creación de Strings:

char[] caracteres={'a','b','c'};String s = new String(caracteres)String s1 = "Hola";String s2 = new String(s1);String s3 = s1;

Page 16: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

MÉTODOS DE LA CLASE STRING Acceso:

String str = "abcdabc";str.length (); // 7str.charAt (3); // d str.substring (3, 5); // dastr.indexOf ("bc"); // 1 str.lastIndexOf ("bc"); // 5

Page 17: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

MÉTODOS DE LA CLASE STRING Manipulación:

str.concat ("xyz") o str += ("xyz"); // “abcdabcxyz"

str.toUpperCase (); // "ABCDABCXYZ"str.replace ('b', 'x'); // "axcdaxcxyz"String conclan = " Hola que tal "conclan.trim (); // "Hola que tal"

Page 18: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

MÉTODOS DE LA CLASE STRING Manipulación:

str.concat ("xyz") o str += ("xyz"); // “abcdabcxyz"

str.toUpperCase (); // "ABCDABCXYZ"str.replace ('b', 'x'); // "axcdaxcxyz"String conclan = " Hola que tal "conclan.trim (); // "Hola que tal"

Page 19: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

MÉTODOS DE LA CLASE STRING Comparación:

String s1 = "abc", s2 = "abz", s3 = "abc";

s1 == s2; // falses1.equals (s3); // trues1.compareTo (s2); // -23 < 0

Page 20: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

ARRAYS Declaración:

int a[]; // vector tamaño: a.length int b[][] // matriz

Reserva de Memoriaa = new int[3];b = new int[4][5];

Page 21: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

ARRAYS: EJEMPLO DE UNA FUNCIÓN

char[] crearArray {char s = new char[26];for (int i=0;i<26;i++)

{ s[i]= (char) ('A'+ i );

} return s;}

Page 22: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

ARRAYS: USO DE FOR OPTIMIZADO

char[] crearArray {char s = new char[26];for (int i=0;i<26;i++)

{ s[i]= (char) ('A'+ i );} for (char elemento: s) { System.out.println(elemento); } return s;}

Page 23: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

CLASES Y OBJETOS EN JAVA

Atributos

Constructor

Método

Page 24: Elementos básicos.  Fuertemente tipeado.  Sintaxis similar a C/C++.  Sin punteros: garbage collection.  Portable.  Integra librerías para objetos.

CLASES Y OBJETOS EN JAVA