Stuart: You said:
> An interface does what it says on the tin: it describes an interface that a > class can then tell the world it implements. > > An abstract class provides functionality as well as an interface description. > An abstract class cannot be instantiated, it can only be extended. > > The logging example given by someone earlier in this thread is the most > common example given for interfaces. This is where the interface is defined > as an API for others to implement and/or use which then enables users to pick > and choose the combination of implementations they want to use based on their > requirements without needing to change any of the code of either class. I understand the "stated" differences between abstract and interface. I can cite what the differences are, but I don't see the practical application differences. To me there is no difference between an abstract class (without method declarations) and an interface. However, I view an interface as a statement (a contract) where IF you want someone to use your code you outline the methods you require them to flesh-out in their code -- but I would like to see a simple example of that. I vaguely get the logging example given by Larry, but I'm not good at abstract thinking -- I need a concrete simple example. I tried to create a demo where I had a Toaster Class that contained breadNumber() and toastSetting() methods and then created an interface so my students could use the Toaster, but it didn't really hold up as well as I wanted. So, can anyone give me a simple example where an interface is used so I can easily explain why they are important? Thanks, tedd _____________________ tedd.sperl...@gmail.com http://sperling.com -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php