Variables: entidades sobre las que actúan los programas.
Ejemplo:Declarar una variable es decir su nombre y tipo.class Count { public static void main(String[] args) throws java.io.IOException { int cuenta = 0; while (System.in.read() != -1) cuenta++; System.out.println("La entrada tiene " + cuenta + " caracteres."); } }
La declaración determina el ámbito de validez (scope)int count;
Todas las variables en Java son de un tipo de datos.
El tipo de una variable determina:Ejemplo:
- los valores que puede tomar
- las operaciones que se pueden realizar
Dos categorías fundamentales:int cuenta; MIN_VALUE < cuenta < MAX_VALUEOperaciones:+, -, *etc.Tipos primitivos y tipos de referencia
Contienen un único valor.
Son los siguientes:Tipo Tamaño/Formato Descripción (Números enteros) byte 8-bit complemento a 2 [-128, 127] short 16-bit complemento a 2 [-32768, 32767] int 32-bit complemento a 2 [-2147483648,2147483647] long 64-bit complemento a 2 [-9223372036854775808, 9223372036854775807] (Números en punto flotante) float 32-bit IEEE 754 min=1.4E-45, max=3.4028235E38] double 64-bit IEEE 754 min=4.9E-324, max=1.7976931348623157E308 (Otros tipos) char 16-bit Unicode carácter Un carácter boolean true o false Un valor booleano
Su valor es una referencia (puntero) al valor representado por la variable.Asimismo las matrices, las clases y los interfaces son tipos de referencia.
Tipos C no soportados por Java: Punteros, estructuras y uniones
- Compuestos de una serie de caracteres del código Unicode (soporte multi-lengua).
- No puede ser una palabra reservada o un literal booleano.
abstract double int static boolean else interface super break extends long switch byte final native synchronized case finally new this catch float null throw char for package throws class goto * private transient * const * if protected try continue implements public void default import return volatile do instanceof short while* No usadas actualmente
- No puede tener el mismo nombre que otra variable declarada en el mismo ámbito.
Convenio:
- empiezan por minúscula (
cuenta
)- si contienen varias palabras, se unen y todas las palabras excepto la primera empiezan por mayúscula (
esCierto
)
Bloque de código dentro del cual una variable es accesible.
Creación/destrucción.
Clasificación de variables
- Miembro de clase o instancia (member variable)
[acceso] [static] [final] [transient] [volatile] type variableName
acceso:static miembro de la clase (no de una instancia)
private
visible solo por miembros de la propia claseprotected
visible en subclases y clases del mismo paquetepublic
visible en todas las clasespackage-access
visible en clases del mismo paquete
final constante
transient no forma parte del estado de la clase
volatile puede ser actualizada de manera asíncrona
- Local a un método (puede limitarse su ámbito con llaves
{}
)- Parámetro de un método
- Parámetro de un manejador de excepciones
Las variables locales y miembro de una clase pueden ser inicializadas en su declaración. Ejemplo:int count = 0;