動作とは何かを理解する最も簡単な方法: メンバー変数の値を変更できます。例えば
class MyClass
{
public Integer i = 0;
public void Operation1(){
i++; //This could be an interpretation of of opaque action from an Activity
};
public void RunStateMachine(){
//You can use state's entry/doActivity/exit behavior. E.g. put "i++" in any of them
//You can use transition's effect behavior. E.g. put "i++" in it
//state's entry/doActivity/exit, transition's effect can specify to another behavior, e.g. run another Activity or statemachine,
//UML provides a good recursive way to let user to model what ever they wanted.
//NOTE: When using statemachine as behavior, you should know that the context (e.g. MyClass my = new MyClass(); here my is the context) of the statemachine
//is expecting an EventOccurence if the transitions has triggers.
//If no triggers are defined in any of the transitions in a statemachine, it can be think of being downgraded as an activity
// (well, it is not conforming to UML, but you can think in that way.)
}
}