Что это значит в джаве?
Книгу по Java даже не открывал, да?
Это ООП
У одного интерфейса могут быть несколько реализаций.
Animal - это интерфейс.
Соответственно, есть разные реализации. Например, 
interface Animal {}
class Dog implements Animal {}
class Cat implements Animal {}

Вот, представьте следующую ситуацию. Вам необходимо написать либу для работы с БД. Притом БД могут быть разные. Это может быть и MySQL, PostgreSQL, SQLite и т.д.
Но у них у всех (независимо от БД) есть некие общие методы. Например, connect() & disconnect()
Тогда создается некий интерфейс Connection 
inteface Connection {
connect(){}
disconnect{}
}
Дальше создаются классы. Например,
class MySQLConnection implements Connection {}
class PostgreSQL implements Connection {}
и т.д.
в которых методы connect() & disconnect() реализуются.

Ну а дальше чтобы подключиться например к БД MySQL используют
Connection c = new MySQLConnection();
c.connect();
Если завтра попросят подключиться к другой БД, то поменяется только new MySQLConnection();