Truely confusing .. I was just giving a whizlabs exam ...and I got the same question and the answer was CORBA
anyways coming back to your question of object state and object behaviour..
Simply put an object state is the set of data values and offered services that the object can deliver at a certain time, in fact, an object life is a sequence of states. - more simply data part of the object
Object behaviour needs more sentences ...
An object behaviour can represent :
1. an object invariant : An object invariant is a set of properties that are respected by all object states. For example, the number of subscribers that are referenced by a telephone dispatcher cannot exceed the dispatcher capacity.
2. an object state change : An object state change is a set of properties that must be respected when an object switches state. A state change can be a consequence of :
1. an object service out going call,
2. an object service in coming call,
3. a climatic event, or other non-formal events etc
example : the addition of a subscriber on a telephone dispatcher is an object state change behaviour
3. output values of object services :An object services can have parameters, and particularly output parameters. During a service call, their output parameters take new values, so an object behaviour can specify these output values.
-- more simply data + code.
Now whenever you pass behaviour ..
you should be able to talk things like what kind of behaviour which definitely includes things like
polymorphism, inheritance ..and encapsulation.Since CORBA also supports non OO languages like COBOL, it cannot pass behaviour only can pass state.
-- can somebody validate whether this thought process makes sense or not ?