Programación Orientada a Objetos Autoboxing Temas Datos y métodos estáticos Integer Double Float Character String Cecilia Curlango Rosas 2/28 Variables de Clase Cuando un atributo se declara con static, es una variable de clase. public clase Ejemplo { static int numeroInstancias = 0; .... } Cecilia Curlango Rosas 3/28 public class StaticVariable { static int numeroDeInstancias; public StaticVariable() { numeroDeInstancias++; } public static void main(String[] args) { StaticVariable sv1 = new StaticVariable(); System.out.println("Numero de instancias de sv1 : " + sv1.numeroDeInstancias); StaticVariable sv2 = new StaticVariable(); System.out.println("Numero de instancias de sv1 : " + sv1.numeroDeInstancias); System.out.println("Numero de instancias de st2 : " + sv2.numeroDeInstancias); StaticVariable sv3 = new StaticVariable(); System.out.println("Numero de instancias de sv1 : " + sv1.numeroDeInstancias); System.out.println("Numero de instancias de sv2 : " + sv2.numeroDeInstancias); System.out.println("Numero de instancias de sv3 : " + sv3.numeroDeInstancias); } } Cecilia Curlango Rosas 4/28 ¿Qué es un método estático? Los métodos que se declaran con la palabra clave static son métodos estáticos. Pertenecen a toda la clase no sólo a una instancia. Se invocan sin un objeto. Cecilia Curlango Rosas 5/28 ¿Qué es un método estático? Los métodos estáticos tienen las siguientes restricciones: 1. Un método estático sólo puede llamar a otros método estáticos. 2. Un método estático sólo debe acceder a datos estáticos. 3. Un método estático no puede referirse al objeto actual con las palabras clave super o this. Cecilia Curlango Rosas 6/28 Clase Integer Cecilia Curlango Rosas 7/28 Clase Integer Cecilia Curlango Rosas 8/28 Clase Integer Cecilia Curlango Rosas 9/28 Clase Integer Cecilia Curlango Rosas 10/28 Clase Integer Cecilia Curlango Rosas 11/28 Clase Integer public long longValue() public float floatValue() public double doubleValue() public String toString() http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html Cecilia Curlango Rosas 12/28 Clase Double http://docs.oracle.com/javase/7/docs/api/java/lang/Double.html Cecilia Curlango Rosas 13/28 Clase Double Cecilia Curlango Rosas 14/28 Clase Double Cecilia Curlango Rosas 15/28 Clase Double Cecilia Curlango Rosas 16/28 Clase Float http://docs.oracle.com/javase/7/docs/api/java/lang/Float.html Cecilia Curlango Rosas 17/28 Clase Float Cecilia Curlango Rosas 18/28 Clase Float Cecilia Curlango Rosas 19/28 Clase Float Cecilia Curlango Rosas 20/28 Clase Float public long longValue() public float floatValue() public double doubleValue() public String toString() Cecilia Curlango Rosas 21/28 Clase Charcter Cecilia Curlango Rosas 22/28 Clase Character static boolean isDigit(char ch) static boolean isLetter(char ch) static boolean isLetterOrDigit(char ch) static boolean isLowerCase(char ch) static char toLowerCase(char ch) http://docs.oracle.com/javase/7/docs/api/java/lang/Character.ht ml Cecilia Curlango Rosas 23/28 Clase String Cecilia Curlango Rosas 24/28 Clase String int compareTo(String anotherString) int compareToIgnoreCase(String str) String concat(String str) boolean contains(CharSequence s) boolean endsWith(String suffix) String replace(char oldChar, char newChar) http://docs.oracle.com/javase/7/docs/api/java/lang/String.html Cecilia Curlango Rosas 25/28 Autoboxing Autoboxing es el proceso por medio del cual un tipo primitivo con int o double se encapsula automáticamente a su tipo equivalente cuando se necesita un objeto. Integer enteroObjeto = 100; Cecilia Curlango Rosas 26/28 Autounboxing Autoboxing es el proceso por medio del cual el valor de un objeto encapsulado se extrae automáticamente cuando se necesita su valor. int i = enteroObjeto; Cecilia Curlango Rosas 27/28 Cecilia Curlango Rosas 28/28