He estado buscando en diferentes idiomas para comenzar. Encontré method_missing en Ruby muy interesante pero no pude encontrar lo mismo en Java y PHP. ¿Hay algo así como method_missing en Java o PHP?Método que falta en Java o PHP
7
A
Respuesta
8
PHP tiene __call($name, array $args)
. Es un catchall que maneja situaciones en las que llama a un método que no está definido para la instancia.
En PHP> = 5.3 también hay __callStatic($name, array $args)
que funciona básicamente de la misma manera solo en el nivel de clase (duh).
class MyClass
{
public function __call($name, array $args)
{
echo "You tried to call $name(".implode(',',$args)."). Silly user.";
}
}
$k = new MyClass();
$k->doSomething(1,2,3); // You tried to call doSomething(1,2,3). Silly user.
El equivalente en Java es un poco más engorroso e implica algo que se llama la clase Proxy. Se puede encontrar un tutorial en here - los ejemplos son un poco más que resumir aquí.
1
1
En PHP, puede usar el método mágico __call()
.
Cuestiones relacionadas
- 1. PHP que falta la función mb_strpos?
- 2. función de PHP error argumento que falta
- 3. Método Clojure Falta
- 4. Falta el método Java (ala Ruby) para decorar?
- 5. ¿Los cierres de PHP están rotos o me falta algo?
- 6. clase o método de alias en java
- 7. Java: ¿Un constructor o método que aceptará una matriz o conjunto o lista o ...?
- 8. Falta el método de uso en Rails
- 9. ¿Bloqueo de método sincronizado de Java en objeto o método?
- 10. PHP $ _FILE matriz que falta entradas del formulario HTML enviado
- 11. Notificación de falta de memoria en Java
- 12. ¿Falta XMLReader en mi versión de PHP?
- 13. ¿Falta la configuración regional en Java?
- 14. Reconocimiento de voz en C o Java o PHP?
- 15. C# 4.0, detectar si falta un método
- 16. Java: método de anulación o sobrecarga?
- 17. XCode C++ espermatozoides que falta()
- 18. Aplicación que falta en Android Market
- 19. Metadata WCF que falta operaciones
- 20. Valor que falta en form.fieldnames en ColdFusion
- 21. Falta el método Type.GetProperty() en Windows 8 Developer Preview
- 22. Elegir entre java o php para GWT!
- 23. Overridding un método de envío - ¿Qué me falta
- 24. ¿Cómo evitar la falta de campos abstractos en Java?
- 25. Método abstracto PHP versus método predeterminado
- 26. NLS mensaje que falta: CANNOT_FIND_FACELET_TAGLIB
- 27. característica que falta en Lucene 4.0 instantánea
- 28. Vista "Servidores" que falta en Eclipse Indigo
- 29. std :: runtime_error que falta en qt + MinGW
- 30. ¿Qué hace que PHP sea más lento que Java o C#?
Después de usar ruby durante mucho tiempo y volver a Java, tengo ganas de volver al siglo XX. – texasbruce