¿Qué es el equivalente de Scala del bloque estático de Java?¿Qué es el equivalente de Scala del bloque estático de Java?
24
A
Respuesta
31
El código en el constructor (es decir, el cuerpo) del objeto complementario es no exactamente igual que el código en un bloque de inicializador estático de una clase Java. En el siguiente ejemplo, creo una instancia de A, pero la inicialización no ocurre.
scala> object Test { class A; object A { println("A.init") }}
defined module Test
scala> new Test.A
res3: Test.A = [email protected]
scala> Test.A
A.init
res4: Test.A.type = [email protected]
para desencadenar la construcción del objeto acompañante cuando se crea la primera instancia de la clase, se puede acceder a él desde el constructor de la clase.
scala> object Test { class A { A }; object A { println("A.init") }}
defined module Test
scala> new Test.A
A.init
res5: Test.A = [email protected]
scala> new Test.A
res6: Test.A = [email protected]
En muchas circunstancias, la diferencia no importaría. Pero si estás lanzando misiles (u otros efectos secundarios), ¡te puede importar!
Cuestiones relacionadas
- 1. ¿Cuál es el equivalente de Scala del ClassName.class de Java?
- 2. estático bloque en Java
- 3. ¿Cuál es el equivalente de Smalltalk de Java estático?
- 4. Cargar propiedades Java dentro del bloque de inicializador estático
- 5. Java: ¿Cuándo es útil un bloque de inicialización estático?
- 6. ¿Cuál es el equivalente Java de un objeto Scala?
- 7. Scala equivalente del ámbito público java
- 8. ¿Cuál es el equivalente del bloque C# "using" en IronPython?
- 9. ¿Cuál es el alcance de las variables declaradas dentro de un bloque estático en Java?
- 10. ¿Qué es .NET equivalente de InterruptedException (Java)?
- 11. Rasgo de Scala: ¿hay un equivalente de campo estático público de la interfaz Java?
- 12. ¿Qué es el análisis de código estático?
- 13. Bloque estático vs método estático - inicialización de campos estáticos
- 14. ¿Qué es "estático"?
- 15. ¿Cuál es el punto del bloque finally?
- 16. Cómo devolver desde un bloque de inicialización estático en java
- 17. ¿Por qué no es bueno escribir en el campo estático del método de instancia en Java?
- 18. Scala, el java del futuro (?)
- 19. Java: ¿El método genérico solo es estático?
- 20. Poner Logger.info en bloque estático
- 21. Análisis estático del gráfico de llamadas Java
- 22. Scala: final estático público en una clase
- 23. equivalente de Scala Hoogle?
- 24. Hay bloque estático en clase en python
- 25. ¿Qué es el rendimiento de Scala?
- 26. equivalente de Scala Nil para el conjunto
- 27. ¿Qué aspecto tiene un método estático de Java en Ruby?
- 28. ¿Qué es PHP equivalente de Java Servlet Filter?
- 29. equivalente a Scala del mapa de Ruby. Cada uno?
- 30. Java: ¿Qué es - público estático <T> foo() {...}?