You are on page 1of 35

Metodologas de Programacin

Ing. Hctor M. Zelada Valdivieso


hzelada@usat.edu.pe

Programacin en Java

Programa en Java Estructura de una clase Importacin de clases Tipo de datos Variables y atributos Constantes Mtodos Creacin de objetos Alcance de los miembros de una clase Clase principal y el mtodo main Entrada y salida de datos en aplicaciones de consola

Programacin en Java

Programa en Java
Un programa en Java esta formado por un conjunto de clases entre las cuales se encuentra la clase principal que es una clase que se caracteriza por contener el mtodo main, que es el mtodo de inicio o de arranque del programa, anlogo a la funcin main de un programa en C o C++. Java es un lenguaje que hereda caractersticas de C y C++, por lo que su sintaxis es muy similar y al igual que C y C++ distingue entre maysculas y minsculas.

Programacin en Java

Estructura de una clase


- Una clase en Java tendr la estructura como se muestra en la imagen. - El especificador de acceso de una clase puede ser de dos tipos: a) De paquete (sin especificador): Slo podr ser utilizada por las clases de su mismo paquete. No esta disponible para otros paquetes, ni siquiera para los subpaquetes. Por omisin; es decir cuando no se indica especificador se considera de paquete. b) Pblico (public): Puede ser utilizada por cualquier clase de cualquier paquete.

Programacin en Java

Estructura de una clase


- Para dar nombres a nuestras clases sigamos la forma como lo hace java. Empiezan las primeras letras de cada palabra del nombre de clase en maysculas, y el resto en minsculas. Ejemplo: System, Integer, Math, BufferedReader, InputStreamReader, etc. - Para los nombres de los atributos y mtodos sigamos la forma como lo hace java. En java empiezan con minscula, si es palabra compuesta las siguientes primeras letras de cada palabra en mayscula, pero siempre la primera en minscula. Ejemplo: pow(), readLine(), valueOf(), apellidoPaterno, edad, etc. - Para los nombres de las constantes as como lo hace java, pondremos todo el nombre con maysculas. Ejemplo: PI, TOPE, etc.

Programacin en Java

Importacin de clases
Java cuenta con una biblioteca de clases conocida como paquetes (packages) de clases, dentro de cada paquete encontraremos unas clases que podemos incluir en nuestros programas y reutilizar sus atributos y mtodos segn se requiera. Anlogo a como se hace con la biblioteca de funciones del C y C++.
Ejemplo de paquetes: java.lang : Donde encontraremos a la clase System, Math, Byte,Short, Integer, Long, Float, Double, String, etc. java.io : Donde encontraremos a la clase BufferedReader, InputStreamReader, IOException, etc. java.util : Donde encontraremos a la clase Date, Random, Arrays, Vector, etc. javax.swing : Donde encontraremos a la clase JOptionPane, etc. etc.

Programacin en Java

Importacin de clases
Para incluir clases en nuestros programas, tenemos que escribir:
import nombrepaquete.NombreClase;

cuando en lugar del nombre de la clase colocamos * significa que importaremos todas las clases de ese paquete. Ejemplo: import java.lang.*; import java.io.*; import java.util.Date; El compilador incluye automticamente en nuestros programas las clases del paquete java.lang, es por eso que ya no es necesario poner la instruccin java.lang.*; en nuestros programas

Programacin en Java

Tipo de datos primitivos


En java no hay unsigned, los valores pueden ser positivos o negativos.

Enteros:
Tipo Dato
byte

Tamao (bytes)
1

Tamao (bit)
8

Rango
-128 a 127

short

16

- 32768 a 32767

int

32

- 2147483648 a 2147483647

long

64

- 9223372036854775808 a 9223372036854775807

Programacin en Java
Enteros:
Observaciones: Java realiza la aritmtica de enteros a 32 bit (int) a no ser que el tipo de dato de la variables sea de mayor tamao que int. Ejemplo:

Error al compilar

Programacin en Java
Enteros:
Alternativa de solucin: Convertimos explcitamente el resultado de la operacin: c=(short)(a+b); Ejemplo:

Programacin en Java
-

Reales:
Tipo Dato
float

Tamao (bytes)
4

Tamao (bit)
32

Rango
-3.4 E+38 a 3.4 E+38

double

64

-1.7 E+308 a 1.7 E+308

Programacin en Java
Reales:
Observaciones: En java cuando inicializamos una variable o constante con un valor real, se considera como tipo double.

Ejemplo: Error al compilar

Programacin en Java
Reales:
Alternativa de solucin: Agregamos el sufijo F o f que indica que ser float. Ejemplo: float tipoCambio=2.5F;

Programacin en Java
-

Caracter:

Tipo Dato
char

Tamao (bytes)
2

Tamao (bit)
16

Rango
\0000 a \FFFF

Programacin en Java
Caracter:
Observaciones: - Java a diferencia de otros lenguajes de programacin trabaja los caracteres a 2 bytes, esto con el fin ser utilizado en cualquier pas con independencia del tipo de alfabeto. Al tener mayor tamao se amplia el rango de caracteres que puede soportar. - Internamente los caracteres se almacenan como nmeros. Por ejemplo la letra A se almacena internamente como 65, la letra B es 66, etc. char letra =a; letra = (char)(letra - 32); //Convierte a mayscula letra= (char)(letra + 32); //Convierte a minscula - Los caracteres van entre comillas simples, las cadenas de caracteres van entre comillas dobles

Programacin en Java
-

Lgicos:
Tipo Dato
boolean

Tamao (bit)
1

Rango
true, false

Observaciones: Slo puede tomar dos valores: true o false.

Ejemplo: boolean band; band=true;

Programacin en Java

Variables
Una variable es un elemento de un programa que almacena un valor el cual puede cambiar durante la ejecucin de un programa En java las variables se clasifican en 2: - Variables locales: Se definen dentro de un mtodo y su mbito es dentro del mtodo. - Variables miembros o atributos: Son los atributos de la clase y se pueden usar dentro de la clase o en otras clases si el especificador de acceso lo permite

Programacin en Java

Variables
Consideraciones a tener en cuenta para dar nombre a las variables: - El nombre debe ser significativo. - No dejar espacios en blanco en los nombres. - No utilizar las palabras reservadas del lenguaje de programacin. - El nombre puede contener caracteres alfanumricos y especiales, pero slo podr empezar con un letra, con un _ (guin bajo), o con $, no podemos utilizar aquellos caracteres que para el compilador son operadores (*,/,+,-,%,.,;, etc.) - Sugerencia: Al igual como lo hace java, para el nombre de la variable empezaremos con minsculas y si es palabra compuesta las primeras letras de las palabras siguientes empezaran con maysculas. Ejemplos: $edad, peso , _cantidad, apellidoPaterno, num7 Ejemplos errados: 7num, *num, for

Programacin en Java

Variables

Declaracin de variables locales en java: tipodato nombreVariable1, nombreVariable2,.. Ejemplos: int base, altura; byte edad; float precioUnitario; ;

Al declarar una variable podemos inicializarle un valor, ejemplo: int contador=0; byte x=0,y=5;

Programacin en Java

Variables
Declaracin de variables miembro o atributos en java: especificadorAcceso tipodato atributo1, atributo2,.. ;

El especificador de acceso puede ser public, private, protected. Cuando no se especifica el acceso, algunos autores le denominan friendly o por omisin y este atributo podr ser accedido por cualquier clase del mismo paquete de la clase donde esta el atributo. Se recomienda que los atributos de una clase sean privados y slo sean manipulados por medio de sus mtodos.
Ejemplos: public int base; private byte edad; protected float precioUnitario; private static float a; // El static indica que tiene alcance de clase. No se necesita crear objetos de la clase que lo contiene para manipularlo y estar disponible para todos los objetos. Al declarar un atributo podemos inicializarle un valor, ejemplo: private int contador=0; public byte x=0,y=5;

Programacin en Java

Especificadores de acceso:

Zona

public +

private -

protected #

Sin especificador friendly

Misma Clase

Subclase en el mismo paquete

x
x x x

x
x x

Subclase en otro paquete

Clase (no subclase) en el mismo paquete

Clase (no subclase) en otro paquete

Programacin en Java

Constantes
Una constante es un elemento de un programa que almacena un valor el cual no puede cambiar durante la ejecucin de un programa. Declaracin de constantes en java: final tipodato NOMBRECONSTANTE = valor; Al igual que java, para nombrar constantes pondremos todo el nombre en maysculas. Ejemplo: final float PI=3.1416; final long TOPE= 1000;

Programacin en Java

Mtodos
especificadorAcceso tipoRetorno nombreMetodo (tipoDato param1, tipoDato param2,) { instrucciones
return expresin } Tengan o no tengan parmetros los mtodos siempre llevan parntesis de esta forma lo diferenciamos de un atributo cuando nos refiramos a un miembro de una clase Los especificadores de acceso que podemos utilizar son los mismos que para los atributos. Ejemplos: public int calcularArea() { return base * altura; } public void cargarDatos(int b, int h) //void indica que el mtodo no retorna valor { base=b; altura =h; } //Si retorna valor el mtodo entonces debe llevar return

Definicin de un mtodo en java:

Parmetros: Los tipos bsicos (byte, short, int, long, float, double, boolean, char) y String, en Java se pasan como parmetros por valor , en cambio los objetos y los arreglos siempre se pasan como referencia. Cuando se retorna un objeto o arreglo, se retorna una referencia a ese objeto.

Programacin en Java

Creacin de objetos
Para crear un objeto de una clase hay que hacerlo explcitamente utilizando el operador new, el operador new devuelve una referencia al nuevo objeto que se almacenar en un variable. Formas de crear objetos a) Primera forma: NombreClase nombreObjeto; nombreObjeto = new NombreClase(); Ejemplo: Alumno objAlu; objAlu = new Alumno();

b) Segunda forma: NombreClase nombreObjeto = new NombreClase(); Ejemplo: Alumno objAlu = new Alumno ();

Programacin en Java

Alcance de los miembros de una clase


El alcance de los miembros (atributos y mtodos) de un clase puede ser de dos tipos de Objeto o de Clase. a) Alcance de instancia o de objeto: Para acceder a los atributos o mtodos de una clase, necesitamos crear un objeto de esa clase. Es decir que para acceder a los miembros de una clase lo primero que tenemos que hacer es crear el objeto, luego segn lo que se requiera y dependiendo del especificador de acceso podemos hacerlo de la siguiente manera: nombreObjeto.nombreAtributo; nombreObjeto.nombreMetodo(parametros);

Programacin en Java
a) Alcance de instancia o de objeto: Ejemplo:
Alumno objAlu; objAlu = new Alumno();
Necesito crear un objeto para poder acceder a los atributos o mtodos de la clase Alumno

//Mtodos objAlu.cargarDatos (Juan Carlos, Perez Bravo, M) codigo = objAlu.generarCodigo (1050);

//Atributos objAlu.nombres = Juan Carlos; sexo = objAlu.sexo;

Programacin en Java
b) Alcance de clase: Se dice que un atributo o mtodo tienen alcance de clase cuando no necesitamos crear objetos para acceder a ellos, podemos acceder a ellos si el especificador de acceso lo permite poniendo directamente el nombre de la clase que los contiene. Los valores de los atributos que tengan alcance de clase permanecen y estn disponibles para todos los objetos que se creen de esa clase. En java para indicar que un atributo o mtodo tiene alcance de clase le ponemos la palabra reservada static; en el diagrama de clases se subraya. Es imposible que un mtodo static pueda acceder a un miembro no static de su clase. Pero mtodo no static, si puede acceder a un miembro static. Ejemplo de cmo indicar que un atributo o mtodo tendrn alcance de clase:

Atributos:
public static String nombres; Mtodos: public static void main (String arg[]) {

Programacin en Java
b) Alcance de clase:
Para acceder a los miembros que tienen alcance de clase, ya no es necesario crear objetos, ponemos el nombre de la clase seguido del nombre del atributo o mtodo que se requiera.

NombreClase.nombreAtributo; NombreClase.nombreMetodo(parametros);
Ejemplo: PI = Math.PI; raiz = Math.sqrt(4); dato=Integer.parseInt(5);

Programacin en Java

Clase principal
La clase principal es aquella que contiene el mtodo main, que es el mtodo de arranque o de inicio del programa.

Programacin en Java

Entrada de datos en aplicaciones de consola.


String dato; BufferedReader objEntrada; objEntrada = new BufferedReader(new InputStreamReader(System.in)); dato = objEntrada.readLine();

Programacin en Java

Entrada de datos en aplicaciones de consola.


El mtodo readLine() devolver una cadena de caracteres de tipo String. En el ejemplo anterior no se hace tratamiento de excepciones para no interferir con el objetivo del ejemplo. Para entrada de datos en aplicaciones de consola estamos utilizando el mtodo readLine() de la clase BufferedReader, programado de tal forma que si detecta una anomala lanza una Excepcin del tipo IOException. En el caso de que el mtodo que invoque a readLine(), en el ejemplo es el mtodo main no defina un bloque para capturar las posibles Excepciones que se puedan presentar, entonces deber propagar estas. Para propagar Excepciones se utiliza en la cabecera del mtodo la palabra reservada throws seguida del nombre de la Excepcin. Cuando la propagacin lo hace el mtodo main se pierde la Excepcin y si se hubiera generado algn error da por terminado el programa, cuando se hace en otros mtodos de otras clase, se propaga hacia la clase que invoc el mtodo quien puede capturar la Excepcin o seguir propagndola. como para la entrada de datos estamos usando las clases BufferedReader, InputStreamReader, IOException que pertenecen al paquete java.io, necesitamos importar a las clases de este paquete: import java.io.* ;

Programacin en Java

Salida de informacin en aplicaciones de consola.


System.out.print (mensaje); System.out.println (mensaje); // Al final hace un salto de lnea, el anterior no

Programacin en Java

Salida de informacin en aplicaciones de consola.


Para la salida de datos utilizaremos la clase System que se encuentra en el paquete java.lang que el compilador importa automticamente. Por eso ya no es necesario poner la instruccin import java.lang.*.

La diferencia entre los mtodos print y println es que println luego de mostrar en pantalla hace un salto de lnea y el otro no lo hace.
Los parmetros que recibe print o println son cadenas de caracteres, pero podemos concatenarle cualquier tipo de dato y estos mtodos lo convertirn automticamente a cadenas. Usaremos el + para concatenar.

Al igual como en C y C++ podemos usar secuencias de escape, donde \ es el carcter de escape.

Programacin en Java

Salida de informacin en aplicaciones de consola.


Secuencia de escape \n \r \t \b \' \" \\ Significado nueva lnea retorno de carro tabulador horizontal retroceso (backspace) comilla simple comillas barra

Ejemplo: System.out.print(\n Hola Mundo);

Gracias!!

You might also like