miércoles, 21 de noviembre de 2012


CONSTRUCTORES

Un Constructor es una función, método de las clases, la cual es llamada automáticamente cuando se crea un objeto de esa clase.

Por ser métodos, los constructores también aceptan parámetros. Cuando en una clase no especificamos ningún tipo de constructor, el compilador añade uno público por omisión sin parámetros, el cual NO hace nada.

 
Características de los Constructores 

1. Un constructor, tiene el mismo nombre de la clase a la cual pertenece.

2. No puede ser Heredado.

3. No retorna ningún valor (Ni void), por lo cual no debe especificarse ningún tipo de dato.

4. Debe declararse como public, sólo en casos realmente extraordinarios será de otro tipo. 

Supongamos una clase llamada Datos 

public class Datos
{
//declaracion de atributos
            public Datos();//constructor sin parametros
            public Datos(int Edad) {//Constructor con parámetros
            EdadM=Edad;
              }
           
}

PARA MAS DETALLES VISITA:


 
 

CONVERSIÓN DE DATOS

Entre tipos numéricos
 
Se debe definir un objeto del tipo numérico que uno desee convertir y luego ejecutar el correspondiente método de conversión.

Todos los objetos numéricos tienen los siguientes métodos de conversión, el tipo de dato que retornan es indicado por su nombre: 

·         doubleValue()

·         longValue()

·         floatValue()

·         intValue()


Ejemplo:

int entero;

double real=3.1416;

Double objReal=new Double(real);

entero=objReal.intValue();

 

domingo, 18 de noviembre de 2012


OTRAS CLASES...
 

Los InputStream: EL OBJETO System.in


Al igual que Java nos ofrece System.out para escribir en pantalla, tenemos System.in para leer de ella. System.in es un objeto de una clase de java que se llama InputStream.

Para java, un InputStream es cualquier cosa de la que se leen bytes. Puede ser el teclado, un fichero, un socket, o cualquier otro dispositivo de entrada. Esto, por un lado es una ventaja. Si todas esas cosas son InputStream, podemos hacer código que lea de ellas sin saber qué estamos leyendo.

Un InputStream es para leer bytes, sólo tiene métodos para leer bytes. Nosotros queremos leer palabras o números del teclado, no bytes. Si escribimos en el teclado una A mayúscula y la leemos con System.in, obtendremos un entero de valor 65, que es el valor del byte correspondiente a la A.

Los Reader


Para java, una clase Reader es una clase que lee caracteres. Esto se parece más a lo que queremos. Un Reader tiene métodos para leer caracteres. Con esta clase ya podriamos trabajar. La pena es que seguimos teniendo System.in, que es un InputStream y no un Reader.

¿Cómo convertimos el System.in en Reader?. Hay una clase en java, la InputStreamReader, que nos hace esta conversión. Para obtener un Reader, únicamente tenemos que instanciar un InputStreamReader pasándole en el constructor un InputStream. El código es el siguiente

InputStreamReader isr = new InputStreamReader(System.in);

Estamos declarando una variable "isr" de tipo InputStreamReader. Creamos un objeto de esta clase haciendo new InputStreamReader(...). Entre paréntesis le pasamos el InputStream que queremos convertir a Reader, en este caso, el System.in

Ya tenemos el Reader. ¿Cómo funciona exactamente?

  • InputStreamReader es un Reader. Se comporta igual que in Reader y se puede poner en cualquier sitio que admita un Reader. Es decir, podemos leer de él caracteres.
  • Al constuirlo le hemos pasado un InputStream, en concreto, System.in. InputStreamReader de alguna forma se lo guarda dentro.
  • Cuando a InputStreamReader le pedimos caracteres, él le pide al InputStream que tiene guardado dentro los bytes, los convierte a caracteres y nos los devuelve.

LA CLASE BufferedReader


Si usamos InputStreamReader, como lee caracteres sueltos, Tenemos que decirle cuántos queremos (que no lo sabemos), o bien ir pidiendo de uno en uno hasta que no haya más. Si sólo tuvieramos la clase InputStreamReader sería un trozo de código que tendriamos que repetir por muchos lados. Para el caso concreto de leer de teclado, sería ideal si hubiese una clase en java que nos lea de golpe todo lo que ha escrito el usuario de nuestro programa y nos lo diera de un golpe.
 
Esa clase existe en Java y se llama BufferedReader. El mecanismo para obtener un BufferedReader a partir de otro Reader cualquiera (por ejemplo el InputStreamReader), es similar al que usamos antes. Lo instanciamos pasándole en el construtor el Reader. El código es

BufferedReader br = new BufferedReader (isr);

El funcionamiento de esta clase es igual que el InputStreamReader. Cuando le pedmos una línea completa de caracteres (un String), ella se lo pide al Reader que tenga dentro, los convierte en String y nos lo devuelve.

Para pedirle un String, se usa el método readLine(). Este método lee todos los caracteres tecleados (recibidos si fuera otro dispositivo de entrada) hasta que encuentra la pulsación de la tecla , o como quieras llamarla.

String texto = br.readLine();

Esto lee del teclado un String completo y lo guarda en una variable "texto".
 
http://www.chuidiang.com/java/novatos/entrada_standard_java.php

lunes, 12 de noviembre de 2012


FORMATO DE CONVERSION A TIPOS DE DATOS REQUERIDOS:

 

Nombre_var = Tipo.Palabra_ReservadaTipo_Dato(Objeto.Método);

 

edad = Integer.parseInt(lectura.readLine());

nocontrol = Long.parseLong(lectura.readLine());

estatura = Float.parseFloat(lectura.readLine());

peso = Double.parseDouble(lectura.readLine());

 

Previamente se declaran las variables:

int edad;

long Nocontrol;

float estatura;

double peso;

miércoles, 7 de noviembre de 2012

INSTRUCCIÓN SWITCH


switch() es una instrucción de decisión múltiple, donde el compilador prueba o busca el valor contenido en una variable contra una lista de constantes int o char, cuando la computadora encuentra el valor de igualdad entre variable y constante, entonces ejecuta el grupo de instrucciones asociados a dicha constante, si no encuentra el valor de igualdad entre variable y constante, entonces ejecuta un grupo de instrucciones asociados a un default, aunque este último es opcional.


Sintaxis:

switch (expresión) {

case valor1:

// Secuencia de instrucciones

break;

case valor2:

// Secuencia de instrucciones

break;


case valorN:

// Secuencia de instrucciones

break;

default:

// Secuencia de instrucciones

}

PROGRAMA SWITCH (MESES)

import java.util.Scanner;
public class opciones {

public static void main(String[] args) {
int mes;

Scanner entrada= new Scanner(System.in);

System.out.print("Introduce un valor entre 1 y 12: ");

mes = entrada.nextInt();


switch(mes) {

case 1:

System.out.println( "Enero");

break;

case 2:

System.out.println("Febrero");

break;

case 3:

System.out.println("Marzo");

break;

case 4:

System.out.println("Abril");

break;

case 5:

System.out.println(""Mayo");

break;

case 6:

System.out.println("Junio");

break;

case 7:

System.out.println("Julio");

break;

case 8:

System.out.println("Agosto");

break;

case 9:

System.out.println("Septiembre");

break;

case 10:

System.out.println("Octubre");

break;

case 11:

System.out.println("Noviembre");

break;

case 12:

System.out.println("Diciembre");

break;

default: // en otro caso ...

System.out.println("Ese valor no corresponde a ningún mes!!!");

}// terminación de switch


}


}