Сравнение классов


Этот маленький параграф на самом деле очень важен.
Как сравнить два класса? Как понять что они одинаковы или нет?
Это позволяют сделать следующие операции:

// Сравнение двух экземпляров одного класса

o1 == o2 : TRUE
o1 != o2 : FALSE
o1 === o2 : FALSE
o1 !== o2 : TRUE

// Сравнение двух ссылок на один экземпляр

o1 == o2 : TRUE
o1 != o2 : FALSE
o1 === o2 : TRUE
o1 !== o2 : FALSE

// Сравнение двух разных классов

o1 == o2 : FALSE
o1 != o2 : TRUE
o1 === o2 : FALSE
o1 !== o2 : TRUE