Bueno...no se si el titulo es correcto, pero quisiera poder definir el tipo de dato admitido en el metodo compareTo() al momento de implementarlo:
Código PHP:
interface IComparable
{
public function compareTo($elem);
public function getDiff(); // devuelve matriz de diferencias
}
Ahora uso la interfaz y comparo objetos pero en otro momento puedo querer comparar un tipo diferente de objetos, u arrays...etc
Cuando intento definir el tipo de dato.... me rebota y me toca andar con rodeos:
Código PHP:
Class Tag implements IComparable
{
...
public function compareTo ($tag2)
{
$class = __CLASS__;
if (!($tag2 instanceof $class))
throw new Exception ('Debe ser del mismo tipo a comparar');
...
Quisiera poder decir en ese caso que me acepte tipo Tag
Mas alla de las posibilidades del lenguaje (que no conozco totalmente), conceptualmente, que tengo mal ? gracias!