Для меня, это технология которая способствует не написанию одного и того же кода в разных местах программы. Например, я хочу создать программу которая читает текстовый файл и проверяет прокси на валидность использует логин и пароль который находиться в этом файле. Так вот, я могу "засунуть" чтению и обработку файлов в класс и запускать несколько экземпляров моего кода (треды). Так вот, кроме этого я могу создать ещё один класс которые наследуется от преведущего класса и будет использовать его функции, например чтения файлов в память. Но в то же время я могу написать во втором классе новые функции, чтобы выполнять другие действия например - используя эти прокис сервера парсит страницы и так далее.