Behaviors & events

Comparing #4 with #5

Revision #5 was created by Lensi Lensi on Mar 30, 2011, 7:37:57 AM.

language

Content

[...]
```
Now $classInstance has all the methods from MySuperClass1 and MySuperClass2. Since MySuperClass2 is being used as a behavior, it has to extend CBehavior.
The only caveat to this is an attached behavior cannot override any class methods of the component it is being attached to. If a method already exists, if it be from the original class or already added by a previously attached behavior, it will not be overwritten.


In an OO language like Ruby, it's quite possible to start with a
n completely empty object and simply build its behavior as you go along. Yii provides this behavior with a little magic. The key is that the class you wish to add the behavior from must extend Cbehavior.
[...]
So, in this case, you are extending the functionality of an object with functionality of another object.

After studying this cookbook page
it isyou are encouraged to reread the [corresponding guide page](http://www.yiiframework.com/doc/guide/basics.component) as it contains advanced information (for example, if you are familiar with interfaces, you might find it enough to implement IBehavior before extending CBehavior).