Has*_*lah 6 java java-native-interface abstract-class
Java中是否允许在类中使用抽象方法,然后使用JNI将其实现在使用本机语言的其他方法中.
例:
abstract class Mommy {
abstract protected void call();
}
class Son extends Mommy {
native protected void call() /*
'native code'
*/
}
Run Code Online (Sandbox Code Playgroud)
什么是预期的行为是可能发生的运行时错误还是"解决方法"的一切都很好?
预期的行为是什么,是可能发生的运行时错误还是“解决方法”一切正常?
如果您(正确地)实现了本机方法并加载包含该实现的本机库,那么一切都会正常。
我想知道是否容易出现错误或违反任何良好/最佳实践?
不,也不。
或者至少,它并不比任何使用本机代码更容易出现错误或更违背“最佳实践”。
顺便说一句,在你使用诸如“最佳实践”之类的狡猾术语之前,你确实应该阅读詹姆斯·巴赫的“没有最佳实践”文章。
| 归档时间: |
|
| 查看次数: |
612 次 |
| 最近记录: |