Runnable interface is a type of functional interface which is designed to provide a common protocol for objects that wish to execute code while they are active. The Runnable interface should be implemented by any class whose instances are intended to be executed by a thread.