//Archivo Person.java
package suntraining.chap02;
public class Person{
//Atributos
private int id;
private String name;
private String userName;
private String userMail;
private String userPassword;
public static int personCounter;
//Setters
public void setId(int i){
id=i;
}
public void setName(String n){
name=n;
}
public void setUserName(String u){
userName=u;
}
public void userMail(String m){
userMail=m;
}
public void userPassword(String p){
userPassword=p;
}
//Getters
public int getId(){
return id;
}
public String getName(){
return name;
}
public String getUserName(){
return userName;
}
public String getUserMail(){
return userMail;
}
public String getUserPassword(){
return userPassword;
}
//Constructores
public Person(){
System.out.println("Creando Objeto");
personCounter++;
}
public Person(String name){
System.out.println("Overloading con 1 string");
//Se utiliza la palabra reservada this para referirse al name de esta clase y que no quede la asignacion name=name
this.name=name;
personCounter++;
}
public Person (String name, String userName){
System.out.println("Overloading con dos strings");
this.name=name;
this.userName=userName;
personCounter++;
}
public Person(int id){
System.out.println("Overloadig con un entero");
this.id = id;
personCounter++;
}
}
//Archivo MainPerson.java
package suntraining.chap02;
public class MainPerson{
public static void main (String []args){
//Se manda a imprimir la variable estatica personCounter para checar que no se necesita declarar una instancia
// para utilizar una variable estatica
//Se crean instancias mandando con distintos parametros para ver el concepto de sobrecarga u overloading
System.out.println("counter: "+Person.personCounter);
Person p = new Person();
System.out.println("counter: "+p.personCounter);
Person per1 = new Person(1);
System.out.println("counter: "+Person.personCounter);
Person per2 = new Person("Juan");
System.out.println("counter: "+Person.personCounter);
Person per3 = new Person("Luis","luis@mail.com");
System.out.println("counter: "+Person.personCounter);
System.out.println("counter: "+p.personCounter);
System.out.println("counter: "+per1.personCounter);
System.out.println("counter: "+per2.personCounter);
System.out.println("counter: "+per3.personCounter);
/*Se le da el valor a personCounter de -1 para observar que aunque se utilicen distintas instancias para imprimir la variable, se conserva en todos el mismo valor*/
Person.personCounter=-1;
System.out.println("counter: "+p.personCounter);
System.out.println("counter: "+per1.personCounter);
System.out.println("counter: "+per2.personCounter);
System.out.println("counter: "+per3.personCounter);
}
}
No hay comentarios:
Publicar un comentario