caracteristÍcas esenciales de un programa en java aspectos básicos de programación en java j osÉ...

53
CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA JOSÉ LUIS REDONDO GARCÍA. GRUPO QUERCUS ENGINEERING SOFTWARE, UEX

Upload: lucia-sandoval-martin

Post on 24-Jan-2016

239 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA

Aspectos Básicos de Programación en

JAVA

JOSÉ LUIS REDONDO GARCÍA. GRUPO QUERCUS ENGINEERING SOFTWARE, UEX

Page 2: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

2

2

Elementos comunes en los lenguajes de programación

Los lenguajes de programación, incluyendo Java, incluyen una serie de elementos comunes: Palabras reservadas Tipos de datos Identificadores Signos de puntuación Operadores Reglas de Sintaxis

Page 3: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

3

3

Elementos comunes en los lenguajes de programación (cont.)

Usaremos el siguiente programa para identificar estos elementos:

public class PayrollApp {

public static void main(String[] args) { int hours = 40; double payRate = 25.0, grossPay;

grossPay = hours * payRate; System.out.print(″Gross Pay: $″); System.out.println(grossPay); }}

Page 4: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

4

4

Elementos comunes en los lenguajes de programación (cont.)

Las palabras reservadas (keywords) tienen un significado especial en el lenguaje. En el programa aparecen: public, class, static, void, int y double.

No pueden ser utilizadas para ninguna otra cosa que no sea para lo que fueron definidas.

En Java las palabras reservadas se escriben usando sólo letras minúsculas.

Page 5: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Palabras Reservadas

Palabras con un significado especial para el compilador

Ejemplos: Nombres de tipos básicos: boolean, char, double,

int, … Indicadores de controls: do, if, else, for, while, … Class, interface, extends, implements package, import this, super Modificadores de acceso: public, private,

protected Constantes: true, false, null Etc…

Page 6: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Tipos de Datos

Java define dos tipos de datos Tipos primitivos Tipos referencia

Los tipos primitivos son ocho agrupados en cuatro categorías: Lógico: boolean Texto: char Entero:byte, short, int, long Real: float, double

Los tipos referencia son apuntadores a objetos.

Page 7: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Tipos de Datos

Tipos primitivos: boolean true o false char unicode! (16 bits) byte entero de 8 bits con signo. short entero de 16 bits con signo. int entero de 32 bits con signo. long entero de 64 bits con signo. float,double IEEE 754 floating point

No es un int

Page 8: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Tipos de datos: Referencia

Un tipo referencia guarda un apuntador a la dirección donde se ubica el objeto (32 bits).

Sólo puede almacenar objetos de su propio tipo.

Ejemplo:Cuadrado cuad1, cuad2;Circulo circ1;cuad1 = new Cuadrado();circ1 = cuad1; // Error de compliacióncuad2 = cuad1’; // Ok

Todas las clases son de tipo referencia.El valor que toma por defecto una variable de

tipo referencia es null.

Page 9: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Tipos de Datos: String

La clase String permite manejar cadenas de caracteres.

El literal string debe ir entre comillas dobles “”.

Se puede crear una cadena de caracteres de dos formas: String nombre = new String(“Pepe”); String nombre = “Pepe”;

Para concatenar dos cadenas se usa el operador +.

No se guarda el carácter fin de cadena.

Page 10: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

10

10

Identificadores

Los identificadores son palabras que el programador utiliza para nombrar cosas tales como programas, clases, variables y rutinas (métodos), entre otros. En el programa aparecen:

PayRollApp, String y System para el programa y otras clases

args, hours, payRate, grossPay y out para las variables

main y println para los métodos

Page 11: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

11

11

Identificadores

En Java los identificadores que corresponden a las clases comienzan con letra mayúscula.

Los identificadores que corresponden a las variables y a los métodos se escriben comenzando con letra minúscula y usando una letra mayúscula al comienzo de cada nueva “palabra”.

Page 12: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

12

12

Java es Case Sensitive

Java es un lenguaje sensitivo a mayúsculas y minúsculas (case sensitive).

Esto quiere decir que todos los identificadores tienen que escribirse tal como fueron definidos. Por ejemplo, grossPay y GrossPay serían dos

identificadores distintos.

Page 13: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

13

13

Elementos comunes en los lenguajes de programación (cont.)

Los signos de puntuación sirven propósitos específicos, tales como marcar el final de una instrucción o indicar el comienzo y el fin de un conjunto de instrucciones. En Java las instrucciones terminan con punto y

coma (‘;’). En Java las cadenas de caracteres (Strings) se

colocan dentro de comillas dobles (‘″’). En el programa aparecen otros signos de

puntuación tales como las llaves (‘{’ y ‘}’), los paréntesis (‘(’ y ‘)’), los corchetes (‘[’ y ‘]’) y el punto (‘.’).

Page 14: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

14

14

Operadores

Los operadores son símbolos o que llevan a alguna operación con datos, también conocidos como operandos.

Algunos ejemplos de operadores aritméticos son: + para sumar dos números - para restar dos números * para multiplicar dos números / para dividir dos números

Page 15: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Operadores (I)

Unarios: +. -

Aritméticos: +, -, *, /, % (resto de la división).

De Asignación: =, +=, -=, *=, %=

<var> += <exp> ó <var> = <var> + <exp>

Operadores incrementales: ++, --

Precediendo a la variable: ++<var>, --<var>

siguiendo la variable: <var>++, <var>--

Page 16: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Operadores (II)

Operadores Comparación: == (igual). != (distinto), <, >, <=, >=, …

Operadores booleanos: && (AND), || (OR), ! (NOT), & (AND), | (OR).

&& y || realizan evaluación perezosa

& y | siempre evalúan los dos operadores

El operador instanceof: <objeto> instanceof <clase> determina si un objeto pertenece a una clase.

Page 17: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

17

17

Elementos comunes en los lenguajes de programación (cont.)

Algunos operadores pueden utilizarse para varias cosas.

Por ejemplo, el operador + puede ser utilizado para: Sumar dos números Indicar que un número es positivo Concatenar (unir) dos cadenas de caracteres

Page 18: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

18

18

Elementos comunes en los lenguajes de programación (cont.)

Un operador importante es el =,que requiere una variable a la izquierda y una expresión a la derecha:grossPay = hours * payRate;

Este operador, llamado operador de asignación, evalúa la expresión de la derecha y asigna el resultado a la variable de la izquierda.

Page 19: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Asignaciones: conversiones de tipos

La conversión de tipos (casting) debe realizarse entre tipos de la misma naturaleza: numéricos o referencia.

Al convertir un tipo a un tamaño más pequeño se puede perder la información del los bits de mayor peso.

No hay conversión automatica con el tipo boolean!

La sintaxis es: (<tipo>) <expresion>Ejemplo: int i = (int) 1.345;

Page 20: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

20

20

Elementos comunes en los lenguajes de programación (cont.)

Las reglas de sintaxis indican cómo escribir correctamente los programas.

Estas reglas indican cómo se pueden utilizar las palabras reservadas y los operadores y cómo los signos de puntuación deben aparecer.

Un programa con errores de sintaxis no puede compilarse ni ejecutarse.

Page 21: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

21

21

Elementos fundamentales de un programa en Java

Consideremos de nuevo este programa:

public class PayrollApp {

public static void main(String[] args) { int hours = 40; double payRate = 25.0, grossPay;

grossPay = hours * payRate; System.out.print(″Gross Pay: $″); System.out.println(grossPay); }}

Page 22: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

22

22

Elementos fundamentales de un programa en Java (cont.)

Todo programa en Java debe tener por lo menos una clase.

Una clase (class) es un contenedor de rutinas (llamadas métodos en Java).

En un archivo fuente se puede tener más de una clase pero sólo una puede tener el atributo public.

Page 23: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

23

23

Elementos fundamentales de un programa en Java (cont.)

Cuando un archivo fuente en Java contiene una clase pública, el nombre de la clase pública tiene que ser el mismo del archivo.

En el ejemplo, la clase pública que representa el programa se llama PayrollApp.

Por lo tanto, el archivo fuente se tiene que llamar PayrollApp.java

Page 24: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

24

24

Elementos fundamentales de un programa en Java (cont.)

La definición de una clase comienza con un encabezado que contiene la palabra class.

Todas las definiciones e instrucciones que pertenecen a una clase están encerrados entre llaves: { }

Estas definiciones e instrucciones son conocidas como el cuerpo de la clase (class body).

Page 25: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

25

25

Elementos fundamentales de un programa en Java (cont.)

En el programa de ejemplo se definió esta clase:

public class PayrollApp {

cuerpo de la clase PayrollApp}

Page 26: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

26

26

Elementos fundamentales de un programa en Java (cont.)

Como se indicó anteriormente, una clase es un contenedor de métodos.

Un método (method) es un contenedor de instrucciones que llevan a cabo una tarea.

Toda aplicación tiene que tener un método principal de nombre main que es el punto de comienzo de la aplicación.

Page 27: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

27

27

Elementos fundamentales de un programa en Java (cont.)

En el programa de ejemplo se definió el método main:

public class PayrollApp {

public static void main(String[] args) {

cuerpo del método main }}

El método main siempre lleva el mismo encabezado.

Durante el curso se explicarán los componentes de este encabezado.

Page 28: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

28

28

Elementos fundamentales de un programa en Java (cont.)

Los métodos también llevan un encabezado y el cuerpo del método (method body) se coloca dentro de llaves.

Los métodos contienen enunciados (statements) que son las instrucciones que se le dan a la computadora.

Existen dos tipos principales de enunciados: Enunciados de declaración Enunciados ejecutables

Page 29: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

29

29

Elementos fundamentales de un programa en Java (cont.)

Los enunciados de declaración (declaration statements) permiten indicar el tipo de datos, nombre y, posiblemente, un valor inicial para cada variable o constante.

Page 30: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

30

30

Elementos fundamentales de un programa en Java (cont.)

Nuestro programa contiene los siguientes enunciados de declaración (resaltados):

public class PayrollApp {

public static void main(String[] args) { int hours = 40; double payRate = 25.0, grossPay;

grossPay = hours * payRate; System.out.print(″Gross Pay: $″); System.out.println(grossPay); }}

Page 31: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Variables y Constantes

Ejemplos de declaración de variables: int x,y,z; int x = 9; boolean terminar = false; Cliente c1 = new Cliente();

Constantes: Zona de memoria cuyos valores no cambian

Declaración: final <tipo> <variable> = <valor>;

Ejemplo: final double PI = 3.14159;

Page 32: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

32

32

Elementos fundamentales de un programa en Java (cont.)

Los enunciados ejecutable (executable statements) permiten que la computadora lleva a cabo instrucciones tales como: Obtener un valor del usuario (input) Asignarle a una variable el resultado de una expresión

(process) Mostrar un valor en la pantalla (output)

Page 33: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

33

33

Elementos fundamentales de un programa en Java (cont.)

Nuestro programa contiene los siguientes enunciados ejecutables (resaltados):

public class PayrollApp {

public static void main(String[] args) { int hours = 40; double payRate = 25.0, grossPay;

grossPay = hours * payRate; // Process System.out.print(″Gross Pay: $″); // Output System.out.println(grossPay); // Output }}

Page 34: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

34

34

Los métodos print y println

Java provee la clase System que contiene una referencia a la pantalla llamada out.

La variable out reconoce los métodos print y println que se utilizan para mostrar valores en la pantalla (una operación de output).

La clase System es un contenedor de definiciones y métodos pero no es una aplicación ya que no contiene el método main.

Page 35: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

35

35

Los métodos print y println (cont.)

Los clase System y los métodos print y println pertenecen a lo que se denomina como la Interfaz de Programación de Aplicaciones (Java API, Application Programming Interface).

Un API es una biblioteca (library) que contiene una serie de clases para llevar a cabo ciertas operaciones.

Las clases y los métodos en el Java API están disponibles para todos los programas en Java.

Page 36: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

36

36

Los métodos print y println (cont.)

Para mostrar en la pantalla (out) el mensaje:

Programming is Fun!

se puede utilizar el método println de la siguiente manera:

System.out.println(″Programming is Fun!″);

Como el mensaje es una cadena de caracteres, éste debe colocarse entre comillas dobles (‘″’).

Page 37: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

37

37

Los métodos print y println (cont.)

El método println muestra un valor en la pantalla y mueve el cursor al inicio de la próxima línea.

El método print muestra un valor en la pantalla pero no mueve el cursor.

Por ejemplo, otra forma de mostrar el mensaje Programming is Fun! es:

System.out.print(″Programming″);System.out.println(″ is Fun!″);

Page 38: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

38

Los métodos print y println (cont.)

El método println es una forma especial del método print.

Por ejemplo, el siguiente enunciadoSystem.out.println(″Programming is Fun!″);

es equivalente aSystem.out.print(″Programming is Fun!\n″);

El segundo enunciado utiliza la secuencia de escape \n (newline) para indicar que se debe mover el cursor al inicio de la próxima línea.

Page 39: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

39

Los métodos print y println (cont.)

Existen varias secuencias de escape (escape sequences) que controlan cómo se muestran los valores en la pantalla pero las veremos cuando las necesitemos.

La secuencia \n se puede colocar en cualquier lugar de una cadena de caracteres.

Por ejemplo,System.out.println(″Programming\n is Fun!

″);

muestra lo siguiente:Programming is Fun!

Page 40: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

40

40

Los métodos print y println (cont.)

En el programa del ejemplo se calcula el salario de un empleado asumiendo que trabajó 40 horas, a $25 por hora:grossPay = hours * payRate;System.out.print(″Gross Pay: $″);System.out.println(grossPay);

El resultado saldrá así en la pantalla:Gross Pay: $1000.0

Page 41: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

41

Los métodos print y println (cont.)

Otra forma de mostrar varios valores en una sola línea es usar el operador +, como muestra este ejemplo: System.out.println(″Gross Pay: $″ + grossPay);

Cuando uno de los valores es un caracter o una cadena de caracteres, al operador + se le llama concatenación.

Este operador simplemente une los dos valores.

El resultado saldrá así en la pantalla:Gross Pay: $1000.0

Page 42: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

42

42

Documentación interna

El código fuente de todo programa debe estar documentado con comentarios descriptivos y explicativos.

Los comentarios son anotaciones que hace el programador para explicar líneas o secciones de código.

Son para las personas que van a ver el código ya que el compilador los ignora.

Page 43: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

43

43

Documentación interna (cont.)

Existen tres formas de hacer comentarios en Java: Comentarios de una sola línea Comentarios de más de una línea Comentarios de documentación

Page 44: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

44

44

Documentación interna (cont.)

Para escribir un comentario de una sola línea se usan los símbolos //:// Esto es un comentario.

Para escribir un comentario de varias líneas se comienzan con /* y se finaliza con */:/* * Esto es un comentario * de dos líneas. */

Page 45: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Paso de Parámetros

Todos los tipos simples y la clase String se pasan a los métodos por valor.

En cambio en Java, todas las clases se pasan por Referencia.

Cualquier cambio al objeto local que ocurra dentro del método afectará al objeto original que fue pasado como argumento.

Page 46: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Parámetros por Referencia -Ejemplo

class PruebaPasoPorReferencia { public static void main(String[] args){

Circulo miCirculo;miCirculo = new Circulo(5.0, "blanco");imprimeCirculo(miCirculo);colorCirculo(miCirculo, "negro");imprimeCirculo(miCirculo);}

public static void colorCirculo( Circulo c, String color) {c.color = color;

} public static void imprimeCirculo(Circulo c) {

System.out.println("El área del circulo de radio " + c.getRadio( ) + " es " +c.Area());System.out.println("El color del Circulo es " +c.color);

} }

Page 47: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Parametros por referencia –Ejemplo (cont.)

class Circulo { private double radio; String color; public Circulo(double r, String c){

radio = r;color = c;

}public double getRadio( ){

return radio; }public double Area( ){

return radio*radio*Math.PI;}

}

Page 48: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Alcance de las variables (I)

En java se dispone tres tipos de alcance de variables: Las variables miembro pertenecientes a una clase. Argumentos de un método de la clase. Variables locales de un método de la clase.

Los argumentos trabajan como variables locales.class Ejemplo {

int x; // variable miembro

metodo (int y){ // argumento

int z; // variable local

x = y + z;

}

}

Page 49: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Alcance de las variables (II)

Las variables miembros son visibles desde cualquier parte de la clase.

Los argumentos y variables locales sólo son visibles dentro del método al que pertenece, dejan de existir al finalizar el método.

Dentro de un método, si coincide el identificador de un argumento o variable local con el de una variable miembro, sólo se accede a la variable del método.

Page 50: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

La referencia this

Se emplea para referirse al objeto actual dentro de un método.

Con this se hace accesible una variable miembro cuyo identificador coincide con una variable local.

Page 51: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Constructores (I)

Un constructor es un tipo especial de método que permite construir un objeto de una clase.

Ejemplo:class Circulo {

public Circulo(){…}

public Circulo(double r){…}

public Circulo(double r, String c){…}

}

Se utilizan junto con la palabra reservada new

Circulo c1 = new Circulo(27);

Page 52: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Constructores (II)

Los constructores se pueden sobrecargar y son opcionales

Si no se define ningún constructor, Java proporciona uno por defecto.

Si se define un constructor con argumentos se pierde el constructor por defecto

Normalmente en el constructor se inicializan las variables miembro.

Page 53: CARACTERISTÍCAS ESENCIALES DE UN PROGRAMA EN JAVA Aspectos Básicos de Programación en JAVA J OSÉ L UIS R EDONDO G ARCÍA. G RUPO Q UERCUS E NGINEERING S

Destructores

En Java no hay destructores como en C++

El “recolector de basura” es el encargado de liberar la memoria. Cuando se detecta objetos no referenciados Al final de un bloque que haya utilizado objetos.