Java Basico: constructores, uso de static y final


package com.codingdojo.pomodoro;
public class FirstName {
   // Constant 'final'
   protected static final String whoiam = "a person";
   // One Attribute for all inheritance 'static'
   protected static int id= 0;
      public FirstName(){
         System.out.print("Jose");
         ++id;<
   }
}
package com.codingdojo.pomodoro;
public class SecondName extends FirstName {
   public SecondName(String c) {
   System.out.println(" " + c);
      // in constructor I can modify o instatiate 'id' atribute
      // id = 3;
   }
   public void printData(){
      System.out.println("id: " + id);
      System.out.println("is: " + whoiam);
   }

   public static void main(String[] args) {
      SecondName p = new SecondName("Alberto");
      p.printData();
      System.out.println("#######################");
      p = new SecondName("Manuel");
      p.printData();
      System.out.println("#######################");
      p = new SecondName("Miguel");
      p.printData();
   }
}

Salida por consola:

Jose Alberto
id: 1
is: a person
#######################
Jose Manuel
id: 2
is: a person
#######################
Jose Miguel
id: 3
is: a person

El ‘id‘ viene a ser mas bien un contador. Me explico, al ser static, es compartida por todas las instancias de la clase superior. Por tanto si volviéramos a ver el id del primero (“Jose Alberto”), sería =4. Osea, un contador.

Anuncios
Java Basico: constructores, uso de static y final

2 comentarios en “Java Basico: constructores, uso de static y final

Los comentarios están cerrados.