esquema_clases_objetos_java.pdf

2
UT 4: CLASES Y OBJETOS EN JAVA Definición de clases en Java La cabecera de la clase [public] [final | abstract] class Nombre_de_la_clase [extends superclase] { El cuerpo de la clase Atributos de una clase modificador_de_atributo tipo_atributo Nombre_atributo; es decir: [private | protected | public] [static] [final] tipo_atributo Nombre_atributo; varios atributos en una misma sentencia (queda más claro por separado): modificador_de_atributo tipo_atributo Nombre_atributo1, . . ., Nombre_atributoN; Métodos de una clase Cabecera del método modificadores_del_método tipo_valor_de_retorno nombre_del_método (parámetro_1, …, parámetro_N) Modificadores: [private | protected | public] [static] [abstract] [final] [native] [synchronized] Tipo de valor de retorno: void | boolean | char | byte | int | long | float | … Parámetros: (tipo_parámetro1 nombre_parámetro1, …, tipo_parámetroN nombre_parámetroN) lanzamiento_de_excepciones throws excepción1, excepción2, …, excepciónN; Cuerpo del método { // Declaración de las variables locales del método tipo nombrevariable1, nombrevariable2; ……… tipo nombrevariableN; // Instrucciones que componen el cuerpo del método …… } // fin del método Control de acceso

Upload: rapacina767752

Post on 08-Feb-2016

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: esquema_clases_objetos_java.pdf

UT 4: CLASES Y OBJETOS EN JAVA

Definición de clases en Java

La cabecera de la clase

[public] [final | abstract] class Nombre_de_la_clase [extends superclase]

{

El cuerpo de la clase

Atributos de una clase

modificador_de_atributo tipo_atributo Nombre_atributo;

es decir: [private | protected | public] [static] [final] tipo_atributo Nombre_atributo;

varios atributos en una misma sentencia (queda más claro por separado):

modificador_de_atributo tipo_atributo Nombre_atributo1, . . ., Nombre_atributoN;

Métodos de una clase

Cabecera del método

modificadores_del_método tipo_valor_de_retorno nombre_del_método (parámetro_1, …, parámetro_N)

Modificadores: [private | protected | public] [static] [abstract] [final] [native] [synchronized]

Tipo de valor de retorno: void | boolean | char | byte | int | long | float | …

Parámetros: (tipo_parámetro1 nombre_parámetro1, …, tipo_parámetroN nombre_parámetroN)

lanzamiento_de_excepciones

throws excepción1, excepción2, …, excepciónN;

Cuerpo del método

{

// Declaración de las variables locales del método

tipo nombrevariable1, nombrevariable2;

………

tipo nombrevariableN;

// Instrucciones que componen el cuerpo del método

……

} // fin del método

Control de acceso

Page 2: esquema_clases_objetos_java.pdf

Objetos o instancias de una clase

Declaración de la referencia al objeto/instancia

Nombre_clase nombre_objeto;

Ejemplo: Trabajador trabajador1;

Asignación del objeto a la referencia (instanciación)

nombre_objeto = new constructor_de_la_clase(parámetros_del_constructor);

Ejemplo: trabajador1 = new Trabajador( );

Declaración de referencia e instanciación en una única sentencia

Nombre_clase nombre_objeto = new constructor_de_la_clase(parámetros_del_constructor);

Ejemplo: Trabajador trabajador1 = new Trabajador( );

Miembros de objeto y miembros de clase

Variables de clase (estáticas)

static tipo_variable_clase nombre_variable_clase;

Ejemplos:

private static int numTrabajadores=0;

private static String[ ][ ] categorias={{"empleado", "encargado", "directivo", "prácticas"},{"25","50","500","0"}};

Métodos de clase (estáticos)

static tipo_devuelto_metodo nombre_metodo_clase(parámetros_metodo)

Ejemplo:

public static void addCategoria (String categoria, int complementoSueldo) {

// Código del método

}

Acceso a los miembros de clase

unObjeto.unaVariableClase

unObjeto.unMetodoClase()

Ejemplos:

unTrabajador.numTrabajadores

unTrabajador.addCategoria(“gerente”,200)

Acceso a los miembros de clase (cuando no hay objetos instanciados)

NombreClase.unaVariableClase

NombreClase.unMetodoClase()

Ejemplos:

Trabajador.numTrabajadores

Trabajador.addCategoria(“gerente”,200)

*La autorreferencia ‘this’ (distinguir atributos y parámetros con el mismo nombre)

this. nombre_atributo = nombre_parámetro;