Anda di halaman 1dari 15

Pablo Rodrguez

La palabra clave this

Si estamos dentro de un objeto y queremos obtener referencia a este objeto. Para solucionar esto existe la palabra clave this

class Moto() { int velocidad; Moto(int a) { velocidad=a; acelerar(); } void acelerar(){ System.out.println(aceleraando a: +velocidad)} }

La palabra clave this


class Moto() { int velocidad; Moto(int velocidad) { this.velocidad=velocidad; this.acelerar();//igual a acelerar(); } void acelerar(){ System.out.println(aceleraando a: +velocidad)} }

La palabra clave this

Si un objeto quiere retornar una referencia a si mismo entonces retorna this

Ejemplo Persona
public class Persona{ String nombre; int edad; Persona(String nombre,int edad) this.nombre=nombre; this.edad=edad; } int getEdad(){ return edad; } String getNombre() { return nombre; } } {

Ejemplo Persona
public class PersonaDemo{ public static void main(String[] args) { Persona persona = new Persona(Cabaas", 29); Persona persona2 = new Persona(Santacruz", 28); System.out.print("El mayor es: "); if(persona2.getEdad()> persona.getEdad()) System.out.println(persona2.getNombre()); else System.out.println(persona.getNombre()); } }

Ejemplo Persona2
public class Persona2 { String nombre; int edad; Persona2(String nombre,int edad) { this.nombre=nombre; this.edad=edad; } int getEdad(){ return edad; } String getNombre() { return nombre; } Persona2 elMayor(Persona2 persona){ if(persona.getEdad()>getEdad()) return persona; else return this; } }

Ejemplo Persona2
public class Persona2Demo { public static void main(String[] args) { Persona2 persona = new Persona2(Cabaas", 29); Persona2 persona2 = new Persona2(Santacruz", 28); Persona2 persona3 = persona.elMayor(persona2); System.out.println("El mayor es: + persona3.getNombre()); } }

Constructor desde Constructor

La palabra clave this tiene otro significado dentro del constructor. Se utiliza para llamar a otro constructor.

Ejemplo Libro
public class Libro { int cantPaginas; public Libro() { this(500); } public Libro(int cantPaginas) { this.cantPaginas=cantPaginas; } public int getCantPaginas() { return cantPaginas; } }

Ejemplo Libro
public class LibroDemo { public static void main(String[] args) { Libro libro = new Libro(); System.out.println("libro tiene = + libro.getCantPaginas()); Libro libro2 = new Libro(1200); System.out.println("libro2 tiene = + libro2.getCantPaginas()); } }

La palabra clave static


Es un modificador que se le puede aplicar a un mtodo o a un atributo. El mtodo o el atributo pertenece ahora a la clase y no al objeto. El mtodo static no tiene acceso a this. No se puede llamar a un mtodo no esttico dentro de uno esttico, lo inverso si es vlido

Ejemplo Libro2
public class Libro2 { static int cantPaginas; public int getCantPaginas() return cantPaginas; } } {

Ejemplo Libro2
public class Prueba { public static void main(String[] args) { Libro2.cantPaginas = 1231; Libro2 libro = new Libro2(); System.out.println("libro tiene = " + libro.getCantPaginas()); Libro2 libro2 = new Libro(); System.out.println("libro2 tiene = "+libro2.getCantPaginas()); } }

Usos de static
Acompaado de la palabra clave final se utiliza para declarar constantes. Para realizar mtodos que sean altamente reutilizable y que no tengan un contexto asociado. Ejemplo. Impresin de vectores, copia de vectores, ordenamiento, promedio, etc.

Anda mungkin juga menyukai