Hola a todos, hoy os explicare como podemos aprovechar las constantes en Java.
El uso de constantes tanto en una aplicación ejecutable como en una clase, siempre es útil.
En una clase, el mejor uso que tiene es definir valores por defecto de nuestros atributos, no es necesario hacer una constante para cada atributo. Al crearla, debemos darle algún valor. Veamos un ejemplo:
/**
* El salario por defecto
*/
private final static double SALARIO_DEF=600;
Como vemos, se define igual que hemos visto, incluyendo static, esto se debe ya que sera igual siempre en todos los objetos que creemos, lo explicaremos con mas detalle con los método y variables estáticas. Cuando creemos un empleado, sin parámetros, el empleado tendrá un salario de 600. Veamos un ejemplo completo:
–Clase
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 |
/** * Clase Empleado * * Contiene informacion de cada empleado * * @author Fernando * @version 1.0 */ public class Empleado { //Constantes /** * El salario por defecto */ private final static double SALARIO_DEF=600; //Atributos /** * Nombre del empleado */ protected String nombre; /** * Apellido del empleado */ protected String apellido; /** * Edad del empleado */ protected int edad; /** * Salario del empleado */ protected double salario; //Metodos publicos /** * Devuelve el nombre del empleado * @return nombre del empleado */ public String getNombre() { return nombre; } /** * Modifica el nombre de un empleado * @param nombre */ public void setNombre(String nombre) { this.nombre = nombre; } /** * Devuelve la edad de un empleado * @return edad del empleado */ public int getEdad() { return edad; } /** * Modifica la edad de un empleado * @param edad */ public void setEdad(int edad) { this.edad = edad; } /** * Devuelve el salario de un empleado * @return salario del empleado */ public double getSalario() { return salario; } /** * Suma un plus al salario del empleado si el empleado tiene mas de 40 años * @param sueldoPlus * @return
*/ public boolean plus (double sueldoPlus){ boolean aumento=false; if (edad>40 && compruebaNombre()){ salario+=sueldoPlus; aumento=true; } return aumento; } //Metodos privados /** * Comprueba que el nombre no este vacio * @return
*/ private boolean compruebaNombre(){ if(nombre.equals("")){ return false; } return true; } //Constructores /** * Constructor por defecto */ public Empleado(){ this ("", "", 0, SALARIO_DEF); } /** * Constructor con 4 parametros * @param nombre nombre del empleado * @param apellido nombre del empleado * @param edad edad del empleado * @param salario salario del empleado */ public Empleado(String nombre, String apellido, int edad, double salario){ this.nombre=nombre; this.apellido=apellido; this.edad=edad; this.salario=salario; } } |
–Clase ejecutable
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
public class EmpleadoApp { public static void main(String[] args) { //Creamos un objeto a traves del constructor por defecto Empleado empleado1=new Empleado(); //Vemos cual es el salario del empleado System.out.println("El salario es "+empleado1.getSalario()); } } |
Puede ser publica o privada, según nos convenga.
Espero que os sea de ayuda. Si teneis dudas, preguntad. Estamos para ayudarte.
Yo voy a ser sincero la verdad es que no tengo ningún tipo de conocimientos sobre Java o Programación, por eso tu Blog me parece muy interesante.
Un saludo.
TRAFFIC Club: Albacete Arte Gráfico.
el static es para hacerlo constante y el «final»?
No, static lo hace estatico y final lo hace constante