elementos java
DESCRIPTION
Slides revisadas en clasesTRANSCRIPT
1
ElementosElementos del del LenguajeLenguajeProfesora Yasna Meza Hidalgo
mailto: [email protected]
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 2
Introducción – Primer programa en Java/* * Primer programa escrito en Java* Objetivo - Mostrar al alumno la sintaxis del lenguaje* Versión - Marzo 2006 - Yasna Meza Hidalgo*/public class Primero{
/* Método que se autoejecuta */public static void main(String args[]){
/* Muestra en la salida estándar (pantalla) * el texto que se indica entre "" */System.out.println("Hola Mundo!!!!");
}}
2
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 3
Introducción – Primer programa en Java/* * Primer programa escrito en Java* Objetivo - Mostrar al alumno la sintaxis del lenguaje* Versión - Marzo 2006 - Yasna Meza Hidalgo*/public class Primero{
/* Método que se autoejecuta */public static void main(String args[]){
/* Muestra en la salida estándar (pantalla) * el texto que se indica entre "" */System.out.println("Hola Mundo!!!!");
}}
Comentarios / Documentación
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 4
Introducción – Primer programa en Java/* * Primer programa escrito en Java* Objetivo - Mostrar al alumno la sintaxis del lenguaje* Versión - Marzo 2006 - Yasna Meza Hidalgo*/public class Primero{
/* Método que se autoejecuta */public static void main(String args[]){
/* Muestra en la salida estándar (pantalla) * el texto que se indica entre "" */System.out.println("Hola Mundo!!!!");
}}
Palabras reservadas – Se deben separar por espacios
3
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 5
Introducción – Primer programa en Java/* * Primer programa escrito en Java* Objetivo - Mostrar al alumno la sintaxis del lenguaje* Versión - Marzo 2006 - Yasna Meza Hidalgo*/public class Primero{
/* Método que se autoejecuta */public static void main(String args[]){
/* Muestra en la salida estándar (pantalla) * el texto que se indica entre "" */
System.out.println("Hola Mundo!!!!");}
}
Punto y coma (;) indica el fin de la instrucción
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 6
Introducción – Primer programa en Java/* * Primer programa escrito en Java* Objetivo - Mostrar al alumno la sintaxis del lenguaje* Versión - Marzo 2006 - Yasna Meza Hidalgo*/public class Primero
{/* Método que se autoejecuta */public static void main(String args[])
{/* Muestra en la salida estándar (pantalla) * el texto que se indica entre "" */System.out.println("Hola Mundo!!!!");
}}
Llaves {} - encierran bloques de código o grupos de instrucciones
4
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 7
Introducción – Primer programa en Java/* * Primer programa escrito en Java* Objetivo - Mostrar al alumno la sintaxis del lenguaje* Versión - Marzo 2006 - Yasna Meza Hidalgo*/public class Primero{
/* Método que se autoejecuta */
public static void main(String args[]){
/* Muestra en la salida estándar (pantalla) * el texto que se indica entre "" */
System.out.println("Hola Mundo!!!!");}
}
Paréntesis () - encierran parámetros para un método
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 8
Introducción – Primer programa en Java/* * Primer programa escrito en Java* Objetivo - Mostrar al alumno la sintaxis del lenguaje* Versión - Marzo 2006 - Yasna Meza Hidalgo*/public class Primero{
/* Método que se autoejecuta */public static void main(String args[]){
/* Muestra en la salida estándar (pantalla) * el texto que se indica entre "" */
System.out.println("Hola Mundo!!!!");
}}
Operador . es usado para definir una cadena de acciones
5
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 9
Introducción – Primer programa en Java
¿Cómo puedo compilar mi primer programa
en Java?
Paso 1 - Abrir la consola
Paso 2 - Verificar la versión de la JVM que se encuentra disponible
java -version
Paso 3 – Ubicar el directorio en donde se encuentra el programa.
Paso 4 - Ejecutar el compilador
javac Primero.java
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 10
Introducción – Primer programa en Java
¿Cómo genero la documentación de mi primer programa en
Java?
Paso 1 - Abrir la consola
Paso 2 – Ubicar el directorio en donde se encuentra el programa.
Paso 3 – Ejecutar la herramienta javadoc
javadoc –D docs Primero.java
6
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 11
Introducción – Primer programa en Java
¿Cuál es el resultado del procedimiento
anterior?
� En el directorio en donde se encuentra el programa se ha generado un directorio llamado docs, dentro de ese directorio se encuentra un conjunto de archivos .HTML.
� Al abrir el archivo Primero.html se encuentra la documentación asociada al programa.
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 12
Introducción – Primer programa en Java
¿Cómo puedo averiguar más acerca de la
herramienta javadoc?
� Visitando http://java.sun.com/javadoc
7
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 13
Palabras reservadas
� Conjunto de palabras que conforman el vocabulario del lenguaje:
� Estructuras de control� if, else, else if, try, catch, case, break, continue
� Modificadores� public, protected, private
� Operadores� new, instanceof
� Representaciones de tipos de datos (literales)� true, false, 1,2,3, null
� Símbolos� [] ; , () {}
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 14
Palabras reservadas
nullsynchronizedgoto
packagecontinueswitchnewconst
forwhilethissupernative
floatclasslongfinallychar
voidstaticinterfacefinalcatch
tryshortintextendscase
transientreturninstanceofelsebyte
throwspublicimportdoublebreak
throwprotectedimplementsdoboolean
thisprivateifdefaultabstract
8
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 15
Identificadores
� Etiquetas que el programador utiliza para nombrar
clases, métodos, atributos, otras variables.
¿Existe alguna regla que establezca la creación de
identificadores?
� Utilizar la representación de caracteres UNICODE.
� DEBEN comenzar con una letra.
� NO DEBEN contener los caracteres # y %
� EVITAR el uso de los caracteres & y $
� NO DEBEN tener espacios
� NO PUEDEN SER PALABRAS RESERVADAS DEL LENGUAJE
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 16
���������������� ���
�������������������
������������������ ��
� ������ �����
��� ��� �������
Almacenamiento de datos
9
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 17
Dato - Elementos
OK, ya me ha quedado claro dónde se almacenan los datos, pero ¿qué implica hablar de un
DATO?
� Localización de almacenamiento, eso implica dispositivo y ubicación dentro de mismo.
� Tamaño de almacenamiento, lo que se traduce en el número de bits para almacenar el valor de un
TIPO DE DATO especifico.
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 18
Tipo de Dato - Clasificación
¿Qué es un tipo de dato?
� Tipos de datos primitivos
� Referencias
� Es una especie de MOLDE que define el rango de valores que puede tomar el dato
y las operaciones válidas sobre el dato.
¿Qué tipos de dato existen?
10
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 19
Tipo de Dato - Clasificación
¿Cuáles son los primitivos?
64double
32float
64long
32int
16short
8byte
16char
1boolean
Longitud (en bits)Tipo de dato
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 20
Tipo de Dato - Clasificación
64double
32float
64long
32int
16short
8byte
16char
1boolean
Longitud (en bits)Tipo de dato
Numéricos -Integrales
11
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 21
Tipo de Dato - Clasificación
64double
32float
64long
32int
16short
8byte
16char
1boolean
Longitud (en bits)Tipo de dato
Numéricos –Punto flotante
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 22
Tipo de Dato - Clasificación
¿Qué es una referencia?
� En Java la mayoría de los elementos con los que se trabaja son objetos, EXCEPTO
los tipos de datos primitivos.
� Corresponde a la dirección de un objeto.
mmmm, ¿Objeto?
12
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 23
Paradigma OO
¿Datos?
Edad
Raza
Color
¿Procesos?
Ladrar
Morder
Comer
Dormir
OBJETOS = CARACTERÍSTICAS + COMPORTAMIENTO
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 24
Concepto de Objeto
¿Qué es un objeto?
� Un objeto es cualquier cosa real o abstracta de la cual almacenamos datos y
los métodos que controlan dichos datos.
Datos
Método-1 Método-2
Método-3
13
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 25
Concepto de Objeto
¿Es posible tener más de un objeto?, ¿Cómo se relacionan
entre ellos?
OBJETO A OBJETO B
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 26
Concepto de Objeto
OBJETO A OBJETO B
Datos
Método-1 Método-2
Método-3
14
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 27
Concepto de Objeto
Yo tengo un nombre y una edad
Yo tengo un nombre y una edad
Yo tengo un nombre y una edad
Yo tengo un nombre y una edad
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 28
Concepto de Objeto
¿Es posible agrupar a los personajes
anteriores?
� Sí, dado que tienen CARACTERÍSTICAS
COMUNES
¿Cuáles son esas características?
15
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 29
Concepto de Objeto
PERSONAS
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 30
Concepto de Objeto
¿Qué nombre reciben esas características
comunes?
� Datos o ATRIBUTOS
¿Tendrán algo más en común, fuera de los
datos?
� Las acciones que ellos pueden
realizar …
16
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 31
Concepto de Objeto - Operaciones
Yo puedo dar mi nombre y mi edad
Yo puedo dar mi nombre y mi edad
Yo puedo dar mi nombre y mi edad
Yo puedo dar mi nombre y mi edad
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 32
Concepto de Objeto
Yo puedo dar mi nombre y mi edad
Yo tengo un nombre y una edad
MUNDO REAL REPRESENTACIÓN
NombreEdad
darNombre()
darEdad()
17
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 33
Concepto de Objeto
Pero, ¿cómo se representa al conjunto
de Personas?
� A través del concepto de CLASE
PERSONA
NombreEdad
darNombredarEdad
Atributos
Métodos
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 34
Referencia a un Objeto
OK, creo que me queda claro el concepto de objeto, pero entonces,
¿qué es una referencia a un objeto?
Persona a;
PERSONA
NombreEdad
darNombredarEdad
a es una referencia a una instancia de Persona
18
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 35
Referencia a un Objeto
¿dónde se almacenan los objetos?
Ofrezco 10 puntos (escala de 1 a 100) para quien me diga, dónde se almacenan los objetos, sabiendo que un objeto es un dato, DEBERÁ justificar su
respuesta.
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 36
Almacenamiento
STATIC CONSTANT
HEAP
STACK
Métodos y variables estáticas (de clase)
19
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 37
Almacenamiento
STATIC CONSTANT
HEAP
STACK
Atributos constantes en memoria
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 38
Almacenamiento
STATIC CONSTANT
HEAP
STACK
Objeto
Objeto
Objeto Objetos, creados con el operador new
20
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 39
Almacenamiento
STATIC CONSTANT
HEAP
STACK
Métodos y variables
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 40
Almacenamiento
Persona a, b; PERSONA
NombreEdad
darNombredarEdad
a y b son una referencia a una instancia de Persona
Nombre
Edad
Nombre
Edad
a b
21
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 41
Referencia a un Objeto
OK, una vez que he creado a los objetos ¿quévalores tienen los
atributos?
Tienen los valores por defecto, dependiendo del tipo de dato del que se trate
¿Y cuáles son los valores por defecto?
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 42
Tipo de Dato – Valores por defecto
nullReferencia
0,0double
0,0float
0long
0int
0short
0byte
/u0000 (UNICODE)char
Falseboolean
Valor por defectoTipo de dato
22
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 43
Datos de clase
Existe un área que se denomina STATIC, que almacena los datos de clase, ¿qué es
un dato de clase?
� Corresponden a los datos globales a la ejecución de una aplicación.
� Representan datos que son COMPARTIDOS por todas los objetos (instancias) de una clase.
¿Algún ejemplo?