Mostrando entradas con la etiqueta Variable. Mostrar todas las entradas
Mostrando entradas con la etiqueta Variable. Mostrar todas las entradas

El Alcance y la Vida de las Variables

martes, 25 de mayo de 2010 · 0 comentarios
Hasta ahora, todas la variables que hemos usado se declararon al principio del método main(). Sin embargo, Java permite que las variables se declaren dentro de cualquier bloque. El inicio de un bloque se marca con un carácter '{', y el fin del bloque, con el correspondiente carácter '}'. Un bloque puede contener otro bloque (o cualquier número de bloques) dentro de él, estos se denominan bloques anidados. Un bloque define el alcance; por lo tanto, cada vez que inicia un nuevo bloque, está creando un nuevo alcance. Un alcance determina cuáles objetos son visibles a otras partes de su programa. Así mismo, determina la vida de dichos objetos.

Casi todos los demás lenguajes de cómputo definen dos categorías generales de alcance: global y local. Aunque están soportadas por Java, no constituyen las mejores formas de categorizar los alcances de Java. Los alcances más importantes son los definidos por una clase y los definidos por un método.

El alcance definido por un método inicia con su llave de apertura. Sin embargo, si dicho método contiene parámetros, éstos se incluyen también dentro de su alcance.

Como regla general, las variables que están declaradas dentro de un alcance no son visibles (es decir, accesibles) a un código que esté definido fuera de este alcance. Por lo tanto, cuando declara una variable dentro del un alcance, localiza esa variable y la protege de acceso no autorizado, de modificación o de ambas posibilidades. Por supuesto, las reglas de alcance proporcionan la base del encapsulamiento.

Así mismo, los alcances pueden están anidados. Por ejemplo, cada vez crea un bloque de código, crea un nuevo alcance anidado. Cuando esto ocurre, el alcance exterior encierra al interior. Esto significa que los objetos declarados en el alcance exterior se volverán visibles al código dentro del alcance interno. Sin embargo, la situación contraria no aplica: los objetos declarados dentro del alcance interior no serán visibles fuera de él.

Para comprender el efecto del los alcances anidados, considere el siguiente programa:

// Demuestra el alcance del bloque.
class AlcanceDemo {
public static void main(String args[]) {
int x; // conocido a todo el código en main
x = 10;
if (x == 10) { //inicia nuevo alcance
int c = 20; //conocido sólo a este bloque
// x y c son conocidos aquí.
System.out.println(“ x y c : “+ x +” “+ c);
x= c * 2;
}
c = 100 // Error. A c no se le conoce aquí, está fuera de su alcance.
// x es aún conocido aquí.
System.out.pritnln(“x es “ + x);
}
}
Como lo indica el comentario, la variable x se declara al principio del alcance de main() y es accesible a todo el código posterior dentro de main(). Dentro del bloque if, está declarada c. Debido a que un bloque define un alcance, c sólo es visible dentro del código de su bloque. Por tal motivo, fuera de su bloque, la línea c = 100; hará que ocurra un error en tiempo de ejecución porque c no es visible fuera de su bloque. Dentro del bloque if, x puede usarse porque el código dentro del bloque (es decir, un alcance anidado) tiene acceso a variables declaradas por un alcance incluido.

Dentro de un bloque, las variables pueden declararse en cualquier punto; sin embargo, sólo son válidas después de ser declaradas. De manera que, si define una variable al inicio de un método, ésta estará disponible para todo el código dentro del método . Por el contrario, si declara un variable al final de un bloque, ésta carecerá de uso porque ningún código tendrá acceso a ella.

A este respecto, hay que recordar otro elemento: las variables se crean cuando se introduce su alcance y se destruye cuando se abandona su alcance. Esto significa que una variable no contendrá su valor una vez que se haya salido de sus alcance. Por lo tanto, las variables declaradas dentro de un bloque perderán su valor cuando se abandone el bloque. Así, la vida de una variable está confinada a su alcance.
[ Seguir leyendo ]

Declaración e Inicialización de Variables

lunes, 24 de mayo de 2010 · 0 comentarios
Java es un lenguaje fuertemente tipificado, es decir, toda variable debe tener un tipo de dato asociado. Esto ayuda a saber el tipo de dato almacenado dentro de la variable o el tipo de dato que necesita ser almacenado dentro de la variable. Las variables se declaran usando esta forma de instrucción:
tipo nombre-var;

Donde tipo es el tipo de datos de la variable y nombre-var es el nombre de la variable. Puede declarar una variable de cualquier tipo válido. Cuando crea una variable, está creando una instancia de su tipo. Por lo tanto, las capacidades de una variable están determinadas por su tipo. Por ejemplo, una variable de tipo boolean no puede utilizarse para almacenar valores de punto flotante. Más aún, el tipo de una variable no puede cambiar durante su existencia. Una variable int no puede convertirse en un char, por ejemplo.

Todas las variables en Java deben declararse antes de ser utilizadas. Esto es necesario porque el compilador debe saber qué tipo de datos contiene una variable antes de poder compilar apropiadamente cualquier instrucción que emplee la variable. También le permite a Java realizar una revisión estricta del tipo.

Inicialización de una variable
En general, debe proporcionar a una variable un valor antes de usarla. Una manera de hacerlo es mediante una instrucción de asignación, como ya lo ha visto. Otra manera consiste en proporcionarle un valor inicial cuando se declara. Para ello, coloque un signo de igual después del nombre de la variable y luego incluya el valor asignado. Aquí se muestra la forma general de inicialización:
tipo var = valor;

En este caso, valor es el valor que se le da a var cuando se crea. El valor debe ser compatible con el tipo especificado. He aquí algunos ejemplos:

int cuenta = 10; // proporciona a cuenta un valor inicial de 10
char ch = 'X'; // inicializa ch con la letra X
float f = 1.2F; // f se inicializa con 1.2

Cuando se declaran dos o más variables del mismo tipo empleado una lista separada por comas puede dar a una o más de estas variables un valor inicial. Por ejemplo:

int a, b = 8, c = 19, d; // b y c tienen inicializaciones

En este caso, sólo b y c están inicializadas.

Inicialización dinámica
Aunque en los ejemplos anteriores sólo se han usado constantes como inicializadores, Java permite que las variables se inicialicen dinámicamente empelando cualquier expresión válida en el momento en que se declara la variable. Por ejemplo, he aquí un programa corto que calcula el volumen de un cilindro dados el radio de su base y su altura.

// Demuestra la inicialización dinámica.
class InicDin{
public static void main(String args[]) {
double radio = 4, altura = 5;
// inicializa dinámicamente el volumen
double volumen = 3.1416 * radio * radio * altura:

System.out.println(“El volumen es “ + volumen);
}
}

En este caso, están declaradas tres variables locales (radio, altura y volumen). Las primeras dos (radio y altura) están inicializadas. Sin embargo, volumen está inicializada dinámicamente al volumen del cilindro. La clave aquí es que la expresión de inicialización puede ser cualquier elemento válido en el tiempo de la inicialización, incluidas llamadas a métodos, así como otras variables o literales.
[ Seguir leyendo ]

Identificadores (variables)

martes, 18 de mayo de 2010 · 0 comentarios
Cuando se escribe un programa se necesita almacenar los valores usados en el programa. Estos valores se almacenan en la memoria, se necesita tener un método simple para acceder a estas posiciones en la memoria. Por esto se usa un identificador o variable para referirnos a estas posiciones en memoria.

Convenciones de Nombres
Hay algunas reglas que tienen que seguirse al momento de nombrar variables en Java. Estas son:
  • Los nombres de variables deben comenzar con una letra, subrayado (_) o dólar($). Sin embargo, no hay restricción en el número de letras que se pueden usar.
  • Los nombres de variables pueden contener letras, números, el subrayado (_) y el carácter dólar ($).
  • No debe haber espacio entre los caracteres.
  • No hay límite de longitud del nombre de la variable.
  • Las palabras clave de Java no pueden usarse como nombres de variables.
  • Para una mejor legibilidad, los nombres de variables deben componerse de dos o más palabras significativas. La primera letra de la variable será siempre en minúsculas y las primeras letras de las palabras subsecuentes en mayúsculas (Ejemplo: numeroCuenta).
  • En el caso de nombres de clase, todas las palabras que son parte del nombre de la clase deben comenzar con una letra mayúscula (Ejemplo: StringBuffer).

[ Seguir leyendo ]
Entradas Antiguas data:homeMsg

CodigoByte

Codigo QR

Etiquetas

Blogumulus by Roy Tanck and Amanda Fazani

Twitter

Seguir codigobyte en Twitter

Twitter Actualizar

    sigueme en Twitter

    Participa

    Java Twitter

    ¿Cúal es la extensión usada para guardar los archivos fuente Java?

    Mangoos

    Mangoos
    http://mangoosbuscador.wordpress.com/

    Anunciantes

    Se escribe con...

    Se escribe con...