Elementos del Lenguaje Profesora Yasna Meza Hidalgo mailto:
[email protected]
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 Marzo 2006
Yasna Meza Hidalgo
Profesora Yasna Meza Hidalgo
Diapositiva 2
1
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 3
¿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.
Marzo 2006
Yasna Meza Hidalgo
Profesora Yasna Meza Hidalgo
Diapositiva 4
2
¿Qué significa declarar la variable de referencia? Declaración de la variable
PERSONA
Variable de referencia
Persona a;
Nombre Edad
a
darNombre darEdad
Nombre Edad
Se encuentra dentro del HEAP Marzo 2006
Profesora Yasna Meza Hidalgo
Diapositiva 5
¿Cuál es el rol de operador new?
PERSONA Nombre Edad
Persona a; a = new Persona()
darNombre darEdad Creación de un objeto
Marzo 2006
Yasna Meza Hidalgo
Profesora Yasna Meza Hidalgo
Diapositiva 6
3
¿Cuál es el rol de operador new?
HEAP
a
Nombre Edad
a = new Persona()
Marzo 2006
Profesora Yasna Meza Hidalgo
Diapositiva 7
¿Qué significa la inicialización?
Inicialización es ASIGNARLE un una variable o identificador.
valor
a
int x; x = 29; Declaración de la variable Inicialización de la variable
Marzo 2006
Yasna Meza Hidalgo
Profesora Yasna Meza Hidalgo
Diapositiva 8
4
¿Qué significa la inicialización por defecto?
Darle los valores a los atributos objeto de acuerdo a su tipo de dato.
HEAP
del
a
Nombre
Es de tipo String
Marzo 2006
Edad
Profesora Yasna Meza Hidalgo
Diapositiva 9
¿String es de tipo primitivo?, ¿cuál será, entonces, su valor por defecto?
HEAP
a
Nombre
Es de tipo String
Marzo 2006
Yasna Meza Hidalgo
Edad
Profesora Yasna Meza Hidalgo
Diapositiva 10
5
¿int es de tipo primitivo?, ¿cuál será, entonces, su valor por defecto?
HEAP
a
null Edad
Es de tipo int
Marzo 2006
Profesora Yasna Meza Hidalgo
Diapositiva 11
¿int es de tipo primitivo?, ¿cuál será, entonces, su valor por defecto?
HEAP
a
null 0
Es de tipo int
Marzo 2006
Yasna Meza Hidalgo
Profesora Yasna Meza Hidalgo
Diapositiva 12
6
¿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 13
¿Qué es un método constructor?
Forma parte de la clase (lo que pueden Permite crear a los el operador new. DEBE llevar el mismo
Marzo 2006
Yasna Meza Hidalgo
funcionalidad de una hacer los objetos). objetos y lo solicita nombre de la clase.
Profesora Yasna Meza Hidalgo
Diapositiva 14
7
¿Qué es un método constructor?
PERSONA Nombre Edad
Persona a; a = new Persona()
darNombre darEdad Constructor
Marzo 2006
Profesora Yasna Meza Hidalgo
Diapositiva 15
¿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.
Marzo 2006
Yasna Meza Hidalgo
Profesora Yasna Meza Hidalgo
Diapositiva 16
8
¿Qué son los argumentos de un método?
Entradas (datos) que cumplir su función.
el
método
requiere para
Supongamos que se requiere de un método que calcule el promedio de dos números.
Marzo 2006
Profesora Yasna Meza Hidalgo
Diapositiva 17
¿Cuáles son las entradas del método?
Resultado
Operando 1 PROMEDIO
Promedio de operandos
Operando 2
Marzo 2006
Yasna Meza Hidalgo
Profesora Yasna Meza Hidalgo
Diapositiva 18
9
Resultado
Operando 1 PROMEDIO
Promedio de Operando 1 y
Operando 2
Operando 2 Parámetros del método
Marzo 2006
Profesora Yasna Meza Hidalgo
Diapositiva 19
Resultado
Operando 1
Promedio PROMEDIO
Operando 1 y
Operando 2
Operando 2
Se requieren las acciones necesarias para obtener el resultado Marzo 2006
Yasna Meza Hidalgo
Profesora Yasna Meza Hidalgo
Diapositiva 20
10
¿Cuáles son las acciones asociadas al método?
Operando 1 Resultado PROMEDIO Operando 2
Promedio
Obtener la suma Dividir por 2
Marzo 2006
Profesora Yasna Meza Hidalgo
Diapositiva 21
Se requiere de un cálculo intermedio antes de calcular el promedio, ¿Dónde se guarda ese cálculo intermedio? Operando 1 Resultado PROMEDIO Operando 2
Promedio
Obtener la suma Dividir por 2
Marzo 2006
Yasna Meza Hidalgo
Profesora Yasna Meza Hidalgo
Diapositiva 22
11
Operando 1 Resultado PROMEDIO Operando 2
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 23
¿Cuáles son los elementos que se pueden definir en Java?
Una clase, método o variable. Cada uno de estos elementos DEBE tener asociado un modificador.
¿Cuáles son los modificadores que existen? Control de acceso Cuantificadores Marzo 2006
Yasna Meza Hidalgo
Profesora Yasna Meza Hidalgo
Diapositiva 24
12
¿En qué consiste el control de acceso?
Define el nivel de acceso de la clase, método o variable.
¿Qué tipos de accesores existen? private public protected default (blanco) Marzo 2006
Profesora Yasna Meza Hidalgo
Diapositiva 25
¿Para qué se utiliza un cualificador?
Define el método.
estado
de
la
variable,
clase
o
¿Qué tipos de cualificadores existen?
static final
Marzo 2006
Yasna Meza Hidalgo
Profesora Yasna Meza Hidalgo
Diapositiva 26
13