In some Java source for Android I see expressions involving a "class" member on Class types, for example when constructing a ComponentName object:

cname := new ComponentName( this, SomeClass.class );

This does not compile in Oxygene for Java, with the compiler claiming that there is no such static member 'class' on the type.

What is the equivalent Oxygene syntax ?

有帮助吗?

解决方案

The "class" member of a Class type in Java is not part of the Java object model but is interpreted directly by the Java compiler. What is sometimes called "compiler magic".

The equivalent compiler magic in Oxygene is the typeof() built-in function:

cname := new ComponentName( self, typeof(SomeClass) );
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top