Interface Interfaces are used when you need to enforce a class to implement Interfaces cannot be instantiated â they are a construct in OOP that allows you to inject âqualitiesâ into classes .. like abstract classes. Jason Wertz 277,772 views. In an interface, all methods must be public. A class implements an interface, whereas a class extends or inherits from an abstract class. For example, the following code has deals with PHP interface and class to show how to implement an interface for a class. PHP - What are Abstract Classes and Methods? If a class is declared as implementing a certain interface or extending a class with abstract methods, it has to implement the methods of such interface or class. An abstract class is also good if we want to declare non-public members. Implementation : An interface is abstract so that it can't provide any code. The abstract class is simply considered a superclass for all classes with the same nature. The class need not repeat the interface declaration. An abstract class is a class that is only partially implemented by the programmer. Similarly, if any other caching class implements this interface define the get and set methods. That way it resembles the diagram above. To use the abstract class we will also need to use the extends keyword, we can only implement one abstract class where we can implement multiple interface classes. The classes which Inherit/implement the interfaces, must define all the abstract methods of the interface. Let's improve the example we created in the last chapter with the new things we learned in this chapter. The abstract class implements the interface, and the subclass inherits from the abstract class.