Для динамических можно переопределить delete, [], @, ., in, each (т.е. можно переопределить что класс будет делать когда вы пытаетесь удалить свойство / метод, обратиться к свойству / методу (не принципиально, используя скобки или точку), обратится к аттрибуту, обратится к следующему свойству, обратится к следующему индексу. А математические операторы, битовые и булевые переопределить нельзя. Хотя, иногда, если очень хочется, то с помощью toString() можно добиться похожего функционала, но оно того явно не стоит
