Java varibles usos y ejercicios

Embed Size (px)

DESCRIPTION

Tipos de datos mas ejemplos de variables en programacion en java con netbeans

Citation preview

Aqu mostramos ejemplos de uso de tipos de datos en Java:/* Ejemplo - aprenderaprogramar.com */public class Ejemplo2 {private int precio; // Las instrucciones y declaraciones finalizan con ;private int importe_acumulado;private String profesor;private String aula;private int capacidad;private boolean funciona;private boolean esVisible;private float diametro;private float peso;private short edad;private long masa;private char letra1;} //Cierre de la clase Hemos declarado variables de tipo primitivo u objeto usando la sintaxis private tipoElegido nombreVariable;La palabra clave private es un indicador de en qu mbito del programa va a estar disponible la variable. Supn que el programa es un edificio con gente trabajando y que hay elementos en el edificio, por ejemplo una impresora, que pueden tener un uso: individual para una persona, colectivo para un grupo de personas, colectivo para todas las personas de una planta, colectivo para todas las personas de un departamento aunque estn en varias plantas, o colectivo para todo el edificio. Pues bien, las variables en Java van a quedar disponibles para su uso en ciertas partes del programa segn especifiquemos con las palabras clave public, private, protected, package, etc. Lo veremos ms adelante, ahora simplemente nos interesa ver cmo declarar variables y usaremos de forma preferente la palabra clave private.El hecho de declarar una variable implica que se reserva un espacio de memoria para ella, pero no que ese espacio de memoria est ocupado aunque pueda tener un contenido por defecto. Ten en cuenta que en Java no puedes aplicar algunas normas que rigen en otros lenguajes, como que al declarar una variable entera sta contendr por defecto el valor cero. En Java esta situacin puede dar lugar a errores de compilacin: una variable entera no debemos suponer que contenga nada. Para que contenga algo debemos asignarle un contenido. Veamos ejemplos de asignacin de contenido:/* Ejemplo - aprenderaprogramar.com */Precio = 42; // Entero tipo int. Un nmero sin punto decimal se interpreta normalmente como int.importe_acumulado = 210; // Entero tipo intprofesor = Ernesto Jurez Prez; // Tipo Stringaula = A-44; // Tipo Stringcapacidad = 1500; // Entero tipo intfunciona = true; // Tipo booleanesVisible = false; // Tipo booleandiametro = 34.25f; // Tipo float. Una f o F final indica que es float.peso = 88.77; // Tipo double. Un nmero con punto decimal se interpreta normalmente como double.edad = 19; // Entero tipo shortmasa = 178823411L; // Entero tipo long. Una l o L final indica que es long.letra1 = h; // Tipo char (carcter). Se escribe entre comillas simples. Este esquema no es necesario aprendrselo de memoria en todos sus detalles, aunque s lo iremos memorizando poco a poco a medida que lo utilicemos, por lo menos hasta tener en nuestra cabeza los nombres de todos los tipos primitivos y envoltorio y sus caractersticas (si son objetos o no y su rango aproximado). A continuacin mostramos el mismo esquema en formato de tabla:TIPOS DE DATOS EN JAVA NOMBRETIPOOCUPARANGO APROXIMADOTIPOS PRIMITIVOS(sin mtodos; no son objetos; no necesitan una invocacin para ser creados)byteEntero1 byte-128 a 127shortEntero2 bytes-32768 a 32767intEntero4 bytes2*109longEntero8 bytesMuy grandefloatDecimal simple4 bytesMuy grandedoubleDecimal doble8 bytesMuy grandecharCarcter simple2 bytes---booleanValor true o false1 byte--- TIPOS OBJETO(con mtodos, necesitan una invocacin para ser creados)Tipos de la biblioteca estndar de JavaString (cadenas de texto)Muchos otros (p.ej. Scanner, TreeSet, ArrayList)Tipos definidos por el programador / usuarioCualquiera que se nos ocurra, por ejemplo Taxi, Autobus, TranviaarraysSerie de elementos o formacin tipo vector o matriz. Lo consideraremos un objeto especial que carece de mtodos.Tipos envoltorio o wrapper (Equivalentes a los tipos primitivos pero como objetos.)ByteShortIntegerLongFloatDoubleCharacterBoolean TIPOS DE DATOS (VARIABLES) EN JAVA.Los primeros lenguajes de programacin no usaban objetos, solo variables. Una variable podramos decir que es un espacio de la memoria del ordenador a la que asignamos un contenido que puede ser un valor numrico (slo nmeros, con su valor de clculo) o de tipo carcter o cadena de caracteres (valor alfanumrico que constar slo de texto o de texto mezclado con nmeros). Como ejemplo podemos definir una variable a que contenga 32 y esto lo escribimos como a = 32. Posteriormente podemos cambiar el valor de a y hacer a = 78. O hacer a equivalente al valor de otra variable b as: a = b.Dado que antes hemos dicho que un objeto tambin ocupa un espacio de memoria: en qu se parecen y en qu se diferencia un objeto de una variable? Consideraremos que las variables son entidades elementales: un nmero, un carcter, un valor verdadero o falso mientras que los objetos son entidades complejas que pueden estar formadas por la agrupacin de muchas variables y mtodos. Pero ambas cosas ocupan lo mismo: un espacio de memoria (que puede ser ms o menos grande).En los programas en Java puede ser necesario tanto el uso de datos elementales como de datos complejos. Por eso en Java se usa el trmino Tipos de datos para englobar a cualquier cosa que ocupa un espacio de memoria y que puede ir tomando distintos valores o caractersticas durante la ejecucin del programa. Es decir, en vez de hablar de tipos de variables o de tipos de objetos, hablaremos simplemente de tipos de datos. Sin embargo, a veces coloquialmente no se utiliza la terminologa de forma estricta: puedes encontrarte textos o pginas web donde se habla de una variable en alusin a un objeto.En Java diferenciamos dos tipos de datos: por un lado, los tipos primitivos, que se corresponden con los tipos de variables en lenguajes como C y que son los datos elementales que hemos citado. Por otro lado, los tipos objeto (que normalmente incluyen mtodos).Veamos los tipos de datos en Java sobre un esquema de sntesis:Nos aparece: returned Taxi@105bd58 (no tiene por qu coincidir con estos dgitos). Prueba a hacer lo mismo con otros objetos Taxi. Vers que cada objeto devuelve una cadena Taxi@.......... distinta. Esto significa que cada objeto ocupa un espacio de memoria distinto y a ese espacio de memoria se le denomina de esa manera un poco extraa. Hacer esto ha sido posible porque al crear objetos en Java por defecto se dispone de algunos mtodos comunes a cualquier objeto. Nosotros en realidad todava no hemos definido mtodos propios para los objetos tipo Taxi.En un programa, cada objeto de tipo Taxi podra informar de su posicin, de su tipo de motor, etc. o ser llamado para que tome determinada posicin (coordenadas), o para modificar el tipo de motor que tiene establecido, entre muchas otras cosas.Prueba a crear objetos tranva y a consultar el identificador de su espacio de memoria. Prueba tambin a borrar objetos del banco de objetos. Para ello pulsa sobre su icono y con el botn derecho del ratn elige la opcin Remove. Por ltimo, vamos a indicar un convenio que sigue la mayora de los programadores: a las diferentes clases les pondremos nombres que comiencen por mayscula como Taxi. Por el contrario, a los objetos les pondremos nombres que comiencen por minscula. En nuestro caso podramos haber nombrado a los objetos como taxi_BFG_7452 para respetar el convenio. Seguir esta norma no es obligada, pero hacerlo es recomendable para mantener un buen estilo de programacin. Las empresas suelen mantener un manual de estilo que sirve de gua para que todos los programadores que trabajen en un proyecto sigan unas normas comunes.ISUALIZAR CLASES Y CREAR OBJETOS JAVA CON BLUEJ. INVOCAR MTODOS.Vamos a crear varias clases y objetos en nuestro entorno de desarrollo. Para ello repetiremos el proceso que seguimos con la clase Ejemplo pero escribiendo el siguiente cdigo: /* Ejemplo - aprenderaprogramar.com */public class Taxi { public static void main (String[ ] arg) { System.out.println ("Soy un taxi"); } //Cierre del main} //Cierre de la clase En otra clase escribiremos:/* Ejemplo - aprenderaprogramar.com */public class Tranvia { public static void main (String[ ] arg) { System.out.println ("Soy un tranva"); } //Cierre del main} //Cierre de la clase La clase Ejemplo que tenamos en nuestra ventana de BlueJ la eliminaremos pulsando sobre ella y con botn derecho elegimos Remove (tambin podemos hacerlo a travs del men Edit -> Remove). Ahora tenemos dos clases y dos iconos de clase: Taxi y Tranvia. Para crear objetos taxi pinchamos sobre el icono Taxi y con botn derecho elegimos new Taxi(). Nos aparece una ventana que nos pide el nombre del objeto y escribimos BFG_7452 (usamos guin bajo porque no se admite guin medio). Repetimos varias veces el proceso y vamos creando distintos objetos taxi. Cada vez que creamos un taxi nos aparece en la parte inferior izquierda un rectngulo rojo con un texto como BFG_7452: Taxi. Este rectngulo representa un objeto taxi. El espacio en la parte inferior izquierda de la pantalla donde se van mostrando los objetos creados de esta manera se denomina Banco de objetos (Object Bench).Hemos creado varios objetos taxi. Fjate que cuando solo tenemos definida la clase no existen objetos: los objetos hay que crearlos para que existan.EJERCICIOConsidera que queremos representar mediante un programa Java los aviones que operan en un aeropuerto. Crea un esquema anlogo al que hemos visto para vehculos, pero en este caso para aviones. Define cules podran ser las clases y cules podran ser algunos objetos de una clase. Para comprobar la correccin de tu solucin puedes consultar en los foros aprenderaprogramar.com. Para acceder a la informacin general sobre este curso y al listado completo de entregas pulsa en este link: Ver curso completo.Para hacer un comentario o consulta utiliza los foros aprenderaprogramar.com, abiertos a cualquier persona independientemente de su nivel de conocimiento.Objeto: entidad existente en la memoria del ordenador que tiene unas propiedades (atributos o datos sobre s mismo almacenados por el objeto) y unas operaciones disponibles especficas (mtodos). Clase: abstraccin que define un tipo de objeto especificando qu propiedades (atributos) y operaciones disponibles va a tener. Estas definiciones son quizs poco clarificadoras. Con un ejemplo vamos a entenderlo mejor. En primer lugar pensemos en un programa que trata de gestionar datos sobre los vehculos de transporte pblico de una ciudad, por ejemplo Mxico D.F. En este ejemplo hemos considerado que el problema consta de tres tipos de vehculo: taxi, autobs y tranva, y que esos tipos los denominamos clases. Qu haramos en Java para definir una clase? Indicar sus propiedades y operaciones (mtodos) disponibles, por ejemplo:/* Ejemplo Clase Taxi - aprenderaprogramar.com */Clase Taxi {Propiedades:Matrcula identificativaDistrito en el que operaTipo de motor diesel o gasolinaCoordenadas en las que se ubica Operaciones disponibles:Asignar una matrculaAsignar un distritoAsignar un tipo de motorUbicar en unas coordenadas} El haber definido as el taxi significar que todo objeto de tipo Taxi que creemos tendr una matrcula identificativa, un distrito en el que opera, un tipo de motor y unas coordenadas en las que se ubica. La creacin de un objeto sera algo as como: Crear un objeto Taxi con matrcula BFG-7452, distrito Norte, tipo de motor Diesel y coordenadas Desconocidas.El uso de una operacin sobre un objeto sera algo as como: Taxi BFG-7452 --> Ubicar en coordenadas (X = 128223, Y = 877533). Las operaciones en Java se denominan mtodos, veremos cmo se definen ms adelante.Decimos que un objeto es una instancia de una clase. Por ejemplo el taxi matrcula BFG-7452 es una instancia de la clase Taxi. Varios objetos (p.ej. taxis) de una misma clase decimos que constituyen instancias mltiples de la clase. Ms adelante veremos que tanto una clase como un objeto en Java pueden representar otras cosas adems de lo que ahora hemos explicado, pero todo a su tiempo. Cuando escribimos cdigo en general es til realizar comentarios explicativos. Los comentarios no tienen efecto como instrucciones para el ordenador, simplemente sirven para que cuando un programador lea el cdigo pueda comprender mejor lo que lee. Ms adelante estudiaremos que Java tiene un sistema normalizado de comentarios (javadoc), ahora simplemente vamos a indicar cmo introducir dos tipos de comentarios:- Comentario multilnea: se abre con el smbolo /* y se cierra con el smbolo */- Comentario en una lnea o al final de una lnea: se introduce con el smbolo // Prueba a introducir comentarios en el cdigo. Aqu te mostramos ejemplos de cmo hacerlo:/* * Este es el primer programa en un IDE del curso Java * Creado el 29/03/2017 * aprenderaprogramar.com*/ // A continuacin el cdigo del programapublic class Ejemplo { public static void main(String[ ] arg) { System.out.println("Hola Java"); //Usamos esta sintaxis para mostrar mensajes por pantalla }} Otro concepto que vamos a introducir ahora es el de bloque. Vamos a denominar bloque al cdigo comprendido dentro de los smbolos { y }. Por lo tanto en el programa anterior podramos distinguir dos bloques. En ocasiones indicaremos junto al smbolo de cierre del bloque algn comentario que nos permita saber a qu bloque cierra ese smbolo. Esto no es necesario ni obligado, pero cuando los programas son largos nos puede ayudar. Ejemplo:/* Ejemplo - aprenderaprogramar.com */public class Ejemplo { public static void main(String [ ] arg) { System.out.println("Hola Java"); } //Cierre del main} //Cierre de la clase Para acceder a la informacin general sobre este curso y al listado completo de entregas pulsa en este link: Ver curso completo.Ahora a programar. Primero resuelve el problema. Entonces, escribe el cdigo.Todos ,os datos corectos para las personas que puedan comprarse un dispositivo electronico para hacer llamdas a celualresVendedorMarcelo [email protected] primer lugar, es muy recomendable hacer un esquema sobre el papel con toda clase de datos que se vayan a utilizar. Por ejemplo, si queremos hacer un programa para controlar una empresa dedicada al alquiler de coches, podramos necesitar:* Matrcula del coche * Marca del coche* Modelo del coche* Color del coche* Estado del coche (si est alquilado, en reparacin o disponible)* Situacin del coche (en qu lugar del garaje o en qu localidad est)* Kilometraje del coche* Precio por hora del cochepor un lado, y:* Nombre del cliente* Apellidos del cliente* Direccin del cliente* DNI del cliente* Permiso de conducir del cliente* Nmero de cuenta del cliente.... etc. por otro.Ahora a programar. Primero resuelve el problema. Entonces, escribe el cdigo.Todos ,os datos corectos para las personas que puedan comprarse un dispositivo electronico para hacer llamdas a celualresVendedorMarcelo [email protected]