Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

206
Visualizações
¿Cómo evitar nombres de parámetros repetitivos (es decir, casi el mismo nombre que un atributo del objeto) al crear un constructor de objetos?

Soy MUY nuevo en la programación OOP, así que pido disculpas de antemano si esta es una pregunta estúpida/irrelevante.

A continuación se muestra un constructor de objetos muy simple en JavaScript

 function Class(assign_to_a, assign_to_b){ this.a=assign_to_a; this.b=assign_to_b; } object=new Class(2,3);

Siento que me estoy repitiendo un poco. Ya nombré el atributo del objeto dentro de la clase, entonces, ¿por qué necesito volver a escribir el mismo nombre (ligeramente alterado) en un parámetro cuyo único propósito es asignarlo a un atributo que ya tiene un nombre descriptivo?

Para comprender mejor lo que estoy tratando de lograr, JavaScript ya ofrece una solución ordenada para esto:

 function Class(){ this.a=arguments[0]; this.b=arguments[1]; } object=new Class(2,3);

De esta manera, no tendré que inventar/reescribir los nombres de los parámetros, cuando ya sé que todos los argumentos se asignarán a un atributo del objeto al momento de la creación.

Mi problema es que no creo que muchos otros idiomas tengan un objeto de argumentos como JavaScript (aunque podría estar equivocado al respecto), así que tendré que encontrar otra solución. En este momento, estoy tratando de crear la misma clase en Java.

 public class Class{ int a, b; public Class(int assign_to_a, int assign_to_b){ a = assign_to_a; b = assign_to_a; } public static void main(String[] args) { Class object = new Class(2, 3); } }

¿Hay alguna forma de solucionar la idea de nombres repetitivos para los parámetros del constructor de objetos, similar a lo que hice en JavaScript, o es algo que simplemente tendré que soportar?

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

En lugar de crear varios parámetros, puede hacer que el constructor tome solo un argumento: una ArrayList . Luego, puede establecer las propiedades privadas y públicas del objeto sacándolas de la ArrayList del constructor. En Java, esta parece ser la coincidencia más cercana al "objeto de argumentos" de JavaScript (en términos de flexibilidad de tipos).

No codifico en Java, pero según su ejemplo, supongo que podría verse así:

 public class Class{ int a, b; public Class(ArrayList ary){ a = ary[0]; b = ary[1]; } public static void main(String[] args) { ArrayList ary = new ArrayList(); ary.add(2); ary.add(3); Class object = new Class(ary); } }

No tengo idea de si eso se compilará, pero espero que sea lo suficientemente bueno para transmitir el concepto.

about 4 years ago · Juan Pablo Isaza Relatório

0

Por lo que sé, no puede evitar especificar los argumentos en una firma de método en Java.

Pero creo que es una gran característica de Java, porque verifica el tipo de parámetros en el momento de la compilación y evita todos los problemas que surgen cuando pasa los argumentos incorrectos a una función.

Si desea evitar el código repetitivo y repetitivo, hay muchas bibliotecas para ayudar, como "Proyecto Lombok".

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda