我基本上在遗留系统上工作,遗留代码是用Smalltalk语言编写的,并试图将Smalltalk中的一些方法转换为Java中的等效方法名.这些是Smalltalk中一些名为的类的方法名称Grid
.我不熟悉Smalltalk语法.Java中相应的名称是什么?方法签名是什么样的?
at: cell put: data
foreColor: color1 backColor: color2 cell: cell
Smalltalk使用内联参数 - 类似于Objective C.在Java(以及从Algol派生的大多数其他语言)中,如果使用多于1个参数,则此样式是不可能的.因此,您必须使用约定将带有内联参数的Smalltalk消息转换为Java方法.
在可可Java绑定一起使用下划线的消息名称,并且为了追加参数:at_put(cell, data)
,foreColor_backColor_cell(color1, color2, cell)
您也可以使用驼峰案例的变体.然而这可能导致名称冲突(例如,如果有一个Smalltalk的消息atPut
,那么你就不能缩短at:put:
到atPut
)
除了内联参数的转换之外,您还可能遇到Smalltalk代码使用保留关键字的问题.例如,for
Smalltalk中的消息是完全有效的,但您不能命名Java方法for
.如果遇到这种情况,则必须采用转义策略 - 例如,通过粘贴下划线以便Java方法成为for_
.
归档时间: |
|
查看次数: |
382 次 |
最近记录: |