Acabo de leer el CONVENCIONES DE CÓDIGO Java SUN; muy buen documento por cierto. Y he leído estaprincipiante de java: variables de clase de inicialización
6,3 inicialización: Trate de inicializar las variables locales donde están declaradas. La única razón para no inicializar una variable donde se declara es si el valor inicial depende de algún cálculo que se produzca primero.
Y me preguntaba si Class variables
están teniendo misma sugerencia o no, por ejemplo tengo:
public class NNmatrix {
protected ArrayList<ArrayList<Double>> matrix; // line 1
public NNmatrix() {
matrix = new ArrayList<ArrayList<Double>>(); // line 2
}
/**
*
* @param otherMtrx
*/
public NNmatrix(final ArrayList<ArrayList<Double>> otherMtrx) {
final int rows = otherMtrx.size();
matrix = new ArrayList<ArrayList<Double>>(rows); // line3
for (int i = 0; i < rows; i++) {
this.matrix.add(new ArrayList<Double>(otherMtrx.get(i)));
}
}
}
edición de código # Si yo hubiera inicializar el variable
donde se declaró (en clase), lo haría eliminar "línea 2" y dejar "línea 3" porque el problema de rendimiento # reserva (filas) en la memoria como usted sabe.
La pregunta es:
- está haciendo que una buena práctica o inicialización cuestión sólo se aplican para las variables locales dentro de los métodos etc solamente?
- Si está bien, quiero saber qué vendrá primero si hice el CÓDIGO DE EDICIÓN # la inicialización @ línea 3 o la inicialización @ línea 1?
sí Estoy de acuerdo contigo ahora que tuve más experiencia –