In this chapter, you learned the basics of using interfaces. First, you learned how to declare an interface. Next, you learned how to implicitly implement an interface and when it was useful. Then you learned some of the shortcomings of implicitly implementing an interface and how explicitly implementing an interface can help. Finally, you learned how to use interface inheritance to create a hierarchy of interfaces.