Estoy tratando de inicializar una clase estática, con un argumento, y luego ejecutar un código estático más en esa clase.
Conozco el bloque static
, pero parece que no puede tomar ningún argumento.
¿Hay alguna manera de pasar argumentos a un constructor estático?
En caso negativo, ¿cuál es la técnica recomendada para inicializar una clase estática utilizando un argumento?¿Pasar el argumento a un constructor estático en Java?
Editar: Una clase estática a mi entender es una clase que no se pueden crear instancias (en C# que se llaman clases estáticas, si Java tiene un término diferente para ellos, lo siento por no ser consciente de ello) - se accede a través de su nombre de clase en lugar de un nombre de objeto.
Lo que estoy tratando de lograr (muy simplificado) es una clase que recibe un diccionario como String, lo analiza y tiene métodos para manipularlo como GetRandomEntry
.
He aquí un fragmento elaborada de mi código:
public class QuestionsRepository {
private static Map<String,String[]> easyDefinitions = new HashMap<String,String[]>();
//...
static
{
// need to receive and parse dictionary here
}
//...
Tomando las partes pertinentes de un fragmento de código nunca es fácil, espero haber elegido sabiamente (:
Otro detalle que puede ser relevante - Soy AC# programador, por lo general. Acaba de comenzar el aprendizaje de Java últimamente.
Gracias.
Esto va en la dirección incorrecta. ¿Alguna razón en particular por la que no puedes usar un constructor normal en una clase no estática? –
¿Qué es una "clase estática" en su comprensión? –
Una muestra de código ayudará a las personas a comprender mejor su pregunta y contexto. –