|
||||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectcn.wensiqun.asmsupport.creator.GlobalVariableCreator
public class GlobalVariableCreator
| 构造方法摘要 | |
|---|---|
GlobalVariableCreator(String name,
int modifiers,
AClass fieldClass)
|
|
| 方法摘要 | |
|---|---|
void |
create(IClassContext cv,
ProductClass owner)
创建逻辑实体 |
void |
create(IClassContext cv,
SemiClass owner)
创建逻辑实体 |
void |
execute()
执行 |
void |
prepare()
执行execute的预先操作 在此方法中如果要对执行队列操作 那么不能对执行队列做删除和添加操作 只能做替操作 除了MethodBody类型的Block是通过直接调用的方式执行Prepare方法之外, 其他Block 均在调用创建该Block的时候触发Prepare方法, 所有创建非MethodBody类型Block都在 jw.asmsupport.block.operator.CreateBlockOperator接口中 对于一般的Block,比如if...else... |
| 从类 java.lang.Object 继承的方法 |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| 构造方法详细信息 |
|---|
public GlobalVariableCreator(String name,
int modifiers,
AClass fieldClass)
name - modifiers - fieldClass - | 方法详细信息 |
|---|
public void create(IClassContext cv,
SemiClass owner)
IMemberCreator 复制的描述
IMemberCreator 中的 create
public void create(IClassContext cv,
ProductClass owner)
IMemberCreator 复制的描述
IMemberCreator 中的 createpublic void prepare()
Executeable 复制的描述执行execute的预先操作 在此方法中如果要对执行队列操作 那么不能对执行队列做删除和添加操作 只能做替操作
除了MethodBody类型的Block是通过直接调用的方式执行Prepare方法之外, 其他Block 均在调用创建该Block的时候触发Prepare方法, 所有创建非MethodBody类型Block都在 jw.asmsupport.block.operator.CreateBlockOperator接口中
对于一般的Block,比如if...else... 比如如下代码:
public void method(){
if(...){
while(....){
...
}
}else{
for(...){
...
}
}
}
通常执行prepare的顺序如下:
$ 表示调用 CreateBlockOperator.xxx方法
_\ 表示触发prepare方法
MethodBody
|
|$
|____\ IF Block
| |
| |$
| |____\ While Block
| |
| |
|/______________________|
|
|$
|____\ Else Block
|
|$
|____\ For Block
|
|
Method Body End /_____________|
但是对于每个连续的Try...Catch...Finally...块, asmsupport会先将这一连续的 块逐一创建完成,再执行各自的Prepare方法。 如下图所示
$ 表示调用 createBlockOperator.xxx方法
_\ 表示出发prepare方法
MethodBody
|
|$
|____\ Try Block 1
| |
| |
| |
|$ |
|____\ Catch Block 1 |
| |
|$ |
|____\ Finally Block 1 |
| |
| |
|_________________________|
|
Method Body End /_____________|
Executeable 中的 preparepublic void execute()
Executeable 复制的描述
Executeable 中的 execute
|
||||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||