Construccion del comportamiento de un objeto

Solo disponible en BuenasTareas
  • Páginas : 24 (5868 palabras )
  • Descarga(s) : 0
  • Publicado : 6 de febrero de 2010
Leer documento completo
Vista previa del texto

ÍNDICE

4.1 DISEÑO DE METODOS (FUNCIONES) 3
4.1.1 TECNICAS DE FORMULACION DE ALGORITMOS 6
4.1.2 TIPOS DE ALGORITMOS 9
4.1.2.1 ALGORITMOS DETERMINISTICOS 9
4.1.2.2 ALGORITMOS APROXIMADOS 11
4.1.2.3 ALGORITMOS HEURÍSTICOS 11
4.1.2.4 ALGORITMOS VORACES 11
4.1.3 ALGORITMOS PROBABILISTICOS 13
4.1.4 IDENTIFICACION DEL PROBLEMA 13
4.1.5 PLANTEAMIENTO DEL PROBLEMA 14
4.1.6 ANALISIS DELPROBLEMA 15
4.1.7 DISEÑO DE LA SOLUCION 15
4.1.8 PRUEBAS Y DEPURACION 15
4.1.9 DOCUMENTACIÓN 16
4.2 OPERADORES 16
4.2.1 ARITMETICOS 20
4.2.2 LOGICOS 21
4.2.3 JERARQUIA DE OPERADORES 25
4.3 EXPRECIONES 26
4.4 ESTRUCTURAS DE CONTROL 26
4.4.1 SELECTIVAS 33
4.4.2 ITERATIVAS 34



CONSTRUCCION DEL COMPORTAMIENTO DE UN OBJETO
4.1 DISEÑO DE METODOS (FUNCIONES)
Los métodos son funcionesque pueden ser llamadas dentro de la clase o por otras clases. La implementación de un método consta de dos partes, una declaración y un cuerpo. La declaración en Java de un método se puede expresar esquemáticamente como:
tipoRetorno nombreMetodo( [lista_de_argumentos] ) {
cuerpoMetodo
}
En C++, el método puede declararse dentro de la definición de la clase, aunque tambiénpuede colocarse la definición completa del método fuera de la clase, convirtiéndose en una función inline.
Los métodos pueden tener numerosos atributos a la hora de declararlos, incluyendo el control de acceso, si es estático o no estático
La lista de argumentos es opcional, tanto en Java como en C++, y en los dos casos puede limitarse a su mínima expresión consistente en dos paréntesis, sinparámetro alguno en su interior. Opcionalmente, C++ permite utilizar la palabra void para indicar que la lista de argumentos está vacía
Los parámetros, o argumentos, se utilizan para pasar información al cuerpo del método.
La sintaxis de la declaración completa de un método es la que se muestra a continuación con los items opcionales en itálica y los items requeridos en negrilla:
especificadorAccesostatic abstract
final native synchronized tipoRetorno nombreMetodo( lista_de_argumentos )
throws listaEscepciones
especificadorAcceso, determina si otros objetos pueden acceder al método y cómo pueden hacerlo.
static, indica que los métodos pueden ser accedidos sin necesidad de instanciar un objeto del tipo que determina la clase.

Los métodos y funciones en C++ pueden devolver unavariable u objeto, bien sea por valor (se devuelve una copia), por puntero o por referencia. Java no soporta punteros, así que no puede devolver nada por puntero.

Para devolver un valor se utiliza la palabra clave return. La palabra clave return va seguida de una expresión que será evaluada para saber el valor de retorno. Esta expresión puede ser compleja o puede ser simplemente el nombre de unobjeto, una variable de tipo primitivo o una constante.
En C++, si un programa devuelve un puntero a un objeto situado en memoria dinámica y el valor de ese puntero no se asigna a una variable, la posibilidad de devolver la memoria al sistema se pierde y se producirá un memory leak, asumiendo que la dirección no está ya disponible para almacenar ninguna otra variable.
en C++ el tipo del valorde retorno debe coincidir con el tipo de retorno que se ha indicado en la declaración del método; aunque en Java, el tipo actual de retorno puede ser una subclase del tipo que se ha indicado en la declaración del método, lo cual no se permite en C++.

En general, se permite almacenar una referencia a un objeto en una variable de referencia que sea una superclase de ese objeto. También se puedeutilizar un interfaz como tipo de retorno, en cuyo caso, el objeto retornado debe implementar dicho interfaz.
Nombre del Método
El nombre del método puede ser cualquier identificador legal en Java. Java soporta el concepto de sobrecarga de métodos, es decir, permite que dos métodos compartan el mismo nombre pero con diferente lista de argumentos, de forma que el compilador pueda diferenciar...
tracking img