Yasna Meza Hidalgo 1
ElementosElementos del del LenguajeLenguajeProfesora Yasna Meza Hidalgo
mailto: [email protected]
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 2
�������������������� �
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
Todos los empleados tienen el mismo sueldo base, equivalente a $140.000
Yasna Meza Hidalgo 2
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 3
�������������������� �
� En el ejemplo anterior, se dice que la característica de SUELDO BASE es un dato de clase.
¿Quécaracterísticas tiene un dato de
clase?
� Declarados con la palabra reservada static.
� Almacenados en el sector STATIC de la RAM.
� Son cargados en memoria antes que una instancia de clase sea creada.
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 4
�����������������
¿Cómo se crea un objeto?
� Declaración de la variable de referencia y llamada al operador new.
� Inicialización por defecto de los datos del objeto según el tipo de dato.
� Inicialización explícita.
� Llamada al método constructor.
� Asignación de la dirección de memoria del objeto creado a la variable de referencia.
Yasna Meza Hidalgo 3
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 5
�����������������
¿Qué significa declarar la variable de referencia?
PERSONA
NombreEdad
darNombredarEdad
Persona a;
Nombre
Edad
a
Se encuentra dentro del HEAP
Variable de referencia
Declaración de la variable
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 6
�����������������
¿Cuál es el rol de operador new?
PERSONA
NombreEdad
darNombredarEdad
Persona a;
a = new Persona()
Creación de un objeto
Yasna Meza Hidalgo 4
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 7
�����������������
¿Cuál es el rol de operador new?
a = new Persona()
HEAP
Nombre
Edad
a
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 8
�����������������
¿Qué significa la inicialización?
� Inicialización es ASIGNARLE un valor a una variable o identificador.
int x;
x = 29;
Declaración de la variable
Inicialización de la variable
Yasna Meza Hidalgo 5
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 9
�����������������
¿Qué significa la inicialización por
defecto?
� Darle los valores a los atributos del objeto de acuerdo a su tipo de dato.
HEAP
Nombre
Edad
a
Es de tipo String
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 10
�����������������
¿String es de tipo primitivo?, ¿cuál será, entonces, su valor por defecto?
HEAP
Nombre
Edad
a
Es de tipo String
Yasna Meza Hidalgo 6
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 11
�����������������
¿int es de tipo primitivo?, ¿cuál será, entonces, su valor por defecto?
HEAP
null
Edad
a
Es de tipo int
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 12
�����������������
¿int es de tipo primitivo?, ¿cuál será, entonces, su valor por defecto?
HEAP
null
0
a
Es de tipo int
Yasna Meza Hidalgo 7
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 13
�����������������
¿Qué significa la inicialización explícita?
� Consiste en asignarle un VALOR ESPECÍFICO a un atributo.
nombre = “Pierre NoDoyUna”;
edad = 26;
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 14
�����������������
¿Qué es un método constructor?
� Forma parte de la funcionalidad de una clase (lo que pueden hacer los objetos).
� Permite crear a los objetos y lo solicita el operador new.
� DEBE llevar el mismo nombre de la clase.
Yasna Meza Hidalgo 8
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 15
�����������������
¿Qué es un método constructor?
PERSONA
NombreEdad
darNombredarEdad
Persona a;
a = new Persona()
Constructor
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 16
����������������������
¿Qué características tiene un dato de
método?
� Variables definidas dentro del método (incluidos sus argumentos).
� Almacenados en el sector STACK de la memoria RAM.
� Disponibles SÓLO durante la ejecución de método.
� Disponibles dentro del cuerpo del método. No accesible desde otros métodos.
� DEBEN ser inicializadas explícitamente por el programador.
Yasna Meza Hidalgo 9
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 17
����������������������
¿Qué son los argumentos de un
método?
� Entradas (datos) que el método requiere para cumplir su función.
Supongamos que se requiere de un método que calcule el promedio de dos números.
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 18
����������������������
¿Cuáles son las entradas del método?
PROMEDIO
Operando 1
Operando 2
Resultado
Promedio de
operandos
Yasna Meza Hidalgo 10
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 19
����������������������
PROMEDIO
Operando 1
Operando 2
Resultado
Promedio de
Operando 1
y
Operando 2
Parámetros del método
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 20
����������������������
PROMEDIO
Operando 1
Operando 2
Resultado
Promedio
Operando 1
y
Operando 2
Se requieren las acciones necesarias para obtener el
resultado
Yasna Meza Hidalgo 11
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 21
����������������������
¿Cuáles son las acciones asociadas al
método?
PROMEDIO
Operando 1
Operando 2
Resultado
Promedio
Obtener la suma
Dividir por 2
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 22
����������������������
Se requiere de un cálculo intermedio
antes de calcular el promedio, ¿Dónde se guarda ese cálculo
intermedio?
PROMEDIO
Operando 1
Operando 2
Resultado
Promedio
Obtener la suma
Dividir por 2
Yasna Meza Hidalgo 12
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 23
����������������������
PROMEDIO
Operando 1
Operando 2
Resultado
Promedio
Obtener la suma
Dividir por 2
Se requiere de un IDENTIFICADOR para guardar
el resultado parcial
TODOS los identificadores que se definan dentro de un método son LOCALES al método.
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 24
������������ ��������
� Una clase, método o variable.
� Cada uno de estos elementos DEBE tener asociado un modificador.
¿Cuáles son los elementos que se pueden
definir en Java?
¿Cuáles son los modificadores que
existen?
� Control de acceso
� Cuantificadores
Yasna Meza Hidalgo 13
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 25
������������ ��������
� Define el nivel de acceso de la clase, método o variable.
¿En qué consiste el control de acceso?
¿Qué tipos de accesores existen?
� private
� public
� protected
� default (blanco)
Marzo 2006 Profesora Yasna Meza Hidalgo Diapositiva 26
������������ ��������
� Define el estado de la variable, clase o método.
¿Para qué se utiliza un cualificador?
¿Qué tipos de cualificadores existen?
� static
� final