在Android的某些Java源代码中,我看到表达式涉及类类型的“类”成员,例如在构造ComponentName对象时:
cname := new ComponentName( this, SomeClass.class );
这不能在Oxygene for Java中编译,编译器声称该类型上没有这样的静态成员“class”。
等效的Oxygene语法是什么?
答案 0 :(得分:4)
Java中Class类的“class”成员不是Java对象模型的一部分,而是由Java编译器直接解释。什么有时被称为“编译魔术”。
Oxygene中的等效编译器魔法是 typeof()内置函数:
cname := new ComponentName( self, typeof(SomeClass) );