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 

So, can anyone give me a simple example where an interface is used so I can 
easily explain why they are important?




PHP General Mailing List (
To unsubscribe, visit:

Reply via email to