This allows for someone to change the order of attaching events.
Chg #2665: CBehavior change _attachEventHandlers to protected
What do you need it for?
basically explained: #2665
if you have 2 behaviors attached to a model they always will perform tasks in the order they were attached, but sometimes it is useful to nest the behaviors (example I gave in the link was with a date converting behavior and encryption behavior).
So it takes the user imputed date and converts it to a timestamp and then it encrypts it. When it receives the data it needs to decrypt the data before it converts it to the users formatted date.
The only other way I can think of doing something like this is to have 3 behaviors (decrypt behavior, date converting behavior, encrypt behavior), but I think the encrypt and decrypt behavior should be together because they share a lot of common variables (algo, key, etc.)
Basically it is nice to have the method protected so if someone needs the order of the behaviors to be attached changed they can implement it in their own behavior classes.
in this case it is better to attach event handles manually not using events() method.