int *a;
a++;
int b = &a; //比如这个例子,我在C里面可以直接对地址进行数值上的变化从而改变地址的值,JAVA里怎么办?有类似办法么?因为目前从C移植到java的程序中频繁遇到地址直接操作的方式,求C语言和JAVA大神相助
2 回答
onemoo
TA贡献883条经验 获得超454个赞
其实底层细节上的不同体现出的是C和Java两者编程思想的不同!
如果你想把C代码移植到Java,那就不应该简单地一行行替换代码,而是要将C代码逻辑拆分成不同的“对象”——将C代码完成的工作变成这些对象间的交互——将这些封装成Java的class。也就是将C代码按照面向对象风格重写。
另一方面,如果在重构的过程中你发现:还是原来的C代码简洁明了、逻辑清晰,重封装成class后反而变得复杂了,那说明要么是你没有很好的将对象关系抽象出来;要么就是这段代码更适合用C来实现。
添加回答
举报
0/150
提交
取消