So in both PHP and in java, interfaces cannot have properies. It makes sense, I mean, what's the point of "implementing" something that has public properties? You can't intercept that. The solution is to use an abstract class.
Its a bit weird to me, because public members are part of a classes interface, but it also isn't that weird for the reasons above.
This creates a problem in wake because our spec or whatever says "you can implement multiple classes even though you can only extend one class."
Really it needs to read "you can implement multiple classes which have no public members even though you can only extend one class."
That, or all public members must be turned into accessors
or maybe make some weird slow means of ding it via reflection all the time. yuck for sure.
So in both PHP and in java, interfaces cannot have properies. It makes sense, I mean, what's the point of "implementing" something that has public properties? You can't intercept that. The solution is to use an abstract class.
Its a bit weird to me, because public members are part of a classes interface, but it also isn't that weird for the reasons above.
This creates a problem in wake because our spec or whatever says "you can implement multiple classes even though you can only extend one class."
Really it needs to read "you can implement multiple classes which have no public members even though you can only extend one class."
That, or all public members must be turned into accessors
or maybe make some weird slow means of ding it via reflection all the time. yuck for sure.